Here is the brief procedure, and there are some helpful illustrations at the BusyMac site, and some suggested modifications as well.
- Save this iCal Backup script to your Applications folder.
- Create a new event in iCal that repeats every day (e.g. 11:00 PM).
- Set the Alarm type to Run Script. Then choose Other... and select the iCal Backup script stored in the Applications folder.
By default, the script creates backup files that are date and time stamped (iCal 2008-11-14 23.00.00.icbu) and stores them in ~/Documents/iCal Backups. It archives up to ten days worth of backups and deletes the older backups.
[crarko adds: I tested this, and it works as described. I've used iCal scheduled scripts for a number of things elsewhere, and it's proven to be a handy technique. This is a good script, and since it's available as source can serve as a good lesson for things like OS version checking.]

