Amazon Cloudfront, like other Amazon AWS offerings, s very API driven and is backed off Amazon S3 (which is also very API driven). To add new items to the CDN you just need to upload the file to S3 and then make a few more API calls to register the content in the CDN.
I haven't used it as yet for a project, but we have looked at it a couple of times (so far we haven't decided that we need a CDN).
One this to note, it does appear that Cloudfront dynamically caches items on the edge nodes. So the item is not there until it is requested, and it may be purged if the cache decides (but it will be repopulated if requested again). So i'm not sure how that will fit with your requirements.
Update:
I have just found this post on ServerFault that indicates that items are cached at the edge for 24 hours (so 24hrs before an object expires and it will check for a new object). Apparently Amazons recomendation is to version the name of the objects to avoid the cache expiry problem.