Google Calendar has this option to publish your own schedule - publicly. So that users can download it to their Google Calendar. All you have to do is to create a URI as a hyperlink that can be used at any webpage. You can use Googles ready-made buttons or may be just simple text for linking to that URI.
A sample URI looks like this
http://www.google.com/calendar/event?action=TEMPLATE Parameter1Parameter2Parameter3
In this query or URI following are the valid parameters
- text (required) - Title of the event
- dates (required) - Event date and time in UTC format. For instance, 20060416/20060416 is used for all day event and 20060416T000000Z/20060416T010000Z is for 1 hour period i.e. April 16, 2006 04:00 PM PST to April 16, 2006 05:00 PM PST.
- sprop (required) - Link to your website. For e.g., sprop=website:http://www.example.com
- add - Your email address.
- details - Details of the event. Simple HTML tags are allowed.
- location - Location of the event
- trp - It makes Google Calendar of user show Busy if it is set to true. It is false by default.
To make things easier I made this little tool called Google Calendar Event Maker.