I too didn’t like SpanningSync very much, but I got along very well with BusySync to sync iCal with GCal. It syncs directly with Google, rather than via a server, so the syncing is literally instant (except of course for the first time you sync).

Plus, it does sync event notifications, which SpanningSync doesn’t.