Is there a way of recording/exposing when an activity is added to CiviCRM?
The creation date of an activity is not, by default, stored in CiviCRM.  Depending on what you want to do, you can:


Create a custom field like you suggested, and write an extension that fills in the value on creation.
Create a custom field, then define a MySQL trigger to fill in the date.  This is less portable, but higher-performance.
You can enable binary logging (aka detailed logging) as described here, which will create log_civicrm_activity.  This is the easiest way to record the date - but doesn't give you a good way to expose this data through the UI.