Anyway so I was ok with the solution, then, for more than a week my calendar sync setup stopped working. I had no new events on the iPhone and I no longer knew what was going on. What happened? From the Mac's point of view it was a simple setup, a few calendars subscribed from Google Apps and then pushed to the iPhone. I couldnt even edit them on the iPhone. So why couldn't it sync? Then I noticed the list of calendars in iTunes for the phone was messed up. I tried all sorts of stuff from resetting my sync history to following various cookbooks to unregister computers, delete sync files etc. None of these worked. I kept searching and eventually ran into something that told me to turn off the "Show birthdays Calendar" in iCal. I clicked that little checkbox and all my calendar sync woes went away. This is a pretty obvious bug and one that others have run into. Sometimes I wonder about Apple.
Anyway, the place I ran into the final solution, BusyMac, has a product called BusySync which has a new beta version out that allows bidirectional sync with Google Calendars (even Google Apps ones). This fixed the last complaint I had with my system before it broke, that I had to use the Google web pages to manage my calendars. It worked out of the box and now I have the perfect setup.
My personal calendars sync from Google Apps to both my work and home iCal calendars. I can edit in any of the locations (work, home or on the web) and the events turn up everywhere.
My work calendar on Exchange gets pushed to iCal at work by Entourage (I use entourage ONLY for this feature as it has some nasty duplicate email and crashing bugs that may be fixed with the recent update). That iCal calendar gets pushed from the work machine up to Google Apps by BusySync and then back down again to my home computer by BusySync. As with my personal calendars I can edit in iCal at home or work, or on Google Apps or in Exchange (OWA, Outlook or Entourage). The Entourage sync to iCal seems shaky and isn't 100%. It would be nice if the BusyMac people supported OWA sync directly or if Google supported all this sort of stuff themselves (they do have an Outlook->Google Apps sync tool but not for the Mac).
Anyway so now I can use the tools I want and see my calendars everywhere. Welcome to the 20th century.
Apple/Google, buy this technology and either upgrade or add it to your inventory. And then make it free for everyone.
It will be interesting to see how the iPhone 2.0 updates with Exchange support etc change all this in June and if my crazy IT departments rules will even allow this approach to work.