I've been using iCal for quite a while, but I've wanted to use Google Calendar so I didn't have to rely on having my laptop with me at all times. It was easy to get my calendar synced from Google Calendar to iCal, but syncing to my phone didn't work, iSync refused to sync stuff from iCal with a message that said I didn't have a calendar.
It turned out to be because I didn't have a local calendar in iCal. As soon as I added a local and empty calendar it worked.
Weird little quirk there in iCal/iSync.
So now I have a Google Calendar as the master, and its content synced to my laptop and phone, read only. With gcalsync on my phone I can then sync new entries from from my phone to Google Calendar, in theory at least. It doesn't seem to work right away, but it's way too late now, and I need to sleep.
In fact I'd love if there was some sort of plugin or program so I could use iCal as the master calendar and have Google Calendar transparently updated in the background, with extra bonus points if I could edit entries on Google and have then show up in iCal too. All of it transparent of course.
I think I'll see if I can dig up some API docs for iCal/iSync and Google Calendar and see what I can do.
I have to sleep now.