OK, I've created an iCal extra for Revo and sumbitted it to the repository. It's called
iCalX.
If you want to use it before it's approved, you can download the transport package here:
http://www.dealerwebinars.com/assets/files/ical/icalx-1.0.0-beta.transport.zip
It's just a pair of snippets and a chunk.
Place the iCalGenerator snippet at the top of your template before any other characters.
Place the iCalLink snippet inside the href of your ical download link.
The chunk is a template for a file in iCal format, you can specify a different template chunk if you want to copy and modify it.
The iCalLink snippet takes various parameters defining the properties of the iCal file, such as summary and start date/time. The parameters are described in the readme.
You can have multiple iCal links per page. You just have to specify the "instance" parameter as a unique integer for each link.
It supports passing data via either _SESSION or _GET. Using _SESSION requires cookies, whereas using _GET results in very ugly URLs.