Since Exchange doesn't provide support for all local calendar types in OWA, I need to create one, using Microsoft.Net's support of calendars, but where should I start?
If I understand correct what you want, the usage of Exchange Server Web Services would be the best way for you. EWS gives you full set of API for appointments and they can be used in .NET very easy. You can use Microsoft Exchange Server 2010 Web Services SDK (EWS SDK) with Exchange Server 2007 SP1 (you should just use ExchangeService
constructor with ExchangeVersion.Exchange2007_SP1
parameter).
I recommend you to watch video http://channel9.msdn.com/pdc2008/BB46/. I find this video as the best starting point.
Other 6 videos from https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032427565&Culture=en-US can gives you more additional information. In two last videos from there you can learn some optimization tricks like retrieving only the properties which you need and paging of results. Using of custom extended properties in appointments is also explained in both of this video sources.
Some small examples how to work with with calendar items (appointment) with respect of EWS SDK you will find here: http://msdn.microsoft.com/en-us/library/dd633702.aspx.
On http://blogs.msdn.com/exchangedev/ you will find more interesting information, links and some good examples.