It looks like this may be a known issue between iCal and Google: http://groups.google.com/a/googleproductforums.com/forum/#!topic/calendar/J8VmiY qHP8U
The suggestion which seemed to fix it for those folks was:
"If you use "Message" [Not message with sound] as the alarm in iCal, then this will sync with google calendar..."
See if that does it for you.
Ok this is definitely a work around but seems to have the desired effect.
Set Google calendar to send a text as a reminder as well as a pop up, which means you get the sound via a text message. Save the google contact details and assign the same alert sound that iCal uses to the text message alert.
To change the time of an alert in iCal, create a new item as a default "all day" event, then change it to a specific timed event and at the same time set an alert as "message" with the desired time.
To make changes to the timing of the alert, change the event back an all day event, close, and then change it again. It's the only way I've found that makes the time stick in iCal.
The text message will unfortunately only come in at the predefined time unless you log in to Google calendar and change it.
Not a solution but this is how I made it work.