If you are importing data manually , CRM will handle Createdon field and you can map it to your datetime field in your CSV file (could not be future date).
But if you are writing code, It’s impossible to change or update the created on field directly in Dynamics CRM while creating a new record pragmatically,
Instead of using Created on field you can use overriddencreatedon field and this field will update the created on field in the background.
overriddencreatedon is available in all entities and it’s display name is Record Created On.
for instance if you create a record with the actual creation date of 10/17/2010, and pass it to overriddencreatedon, interestingly CRM will store the 10/17/2010 in Created on field and will update the overriddencreatedon with the date that you performing that action in CRM.
Once you create the record you can’t modify creation date anymore and it’s only accessible while creating.