Hi Matt,
I found my own solution to this problem and I think you can get it to work as well. The thing is that you'll need to make your Google calendar your only calendar. This means that you'll not want to have a Home or Work iCal because that stuff may not sync well with your Google calendar, but the Google Calendar data will appear within iCal on your iOS and Mac computer without any problems.
Before you do any thing I suggest, you must make sure that everything that you want on your calendar is on your on-line Google calendar. If something is not there and you want it there, the thing you'll need to do is manually add it. There is no work around that I have found for this.
Next, on your computer:
1. Go to System Preferences > iCloud
2. Make sure that Calendars is not selected. You don't want your computer or iOS devices to be confused with the iCal Home / Work, etc. calendars. So let's not sync them.
3. Go to System Preferences > Mail, Contacts & Calendars
4. Delete Your Google account there
5. Go to System Preferences > Mail, Contacts & Calendars
6. Re-add your Google account
Now you should be able to go into iCal on your computer and find that your Google calendar is there.
You will need to do a similar thing with your iOS device.
1. Settings > iCloud > Turn off 'Calendars'
2. Settings > Mail, Contacts, Calendars > Delete Gmail Account
3. Settings > Mail, Contacts, Calendars > Re-add Gmail Account
This should make it so that you can use your Google calendar and it will be synced to your Mac computer, iOS device, and the Internet (Google's Calendar Website).
You can see that this is in a sense a workaround in that you can't sync your iCal Home/Work calendars (or other calendars) created with iCloud to Google. I'm thinking that's the problem I ran into before. Anyway it works for me because I only need the one calendar and others are using Google that I need easy access to.
Let me know if you run into problems and remember you need to confirm that all your data is saved on the google calendar on-line (you can check through Google's website) before doing any of the steps above.