I posted something rather alike yesterday. Today I found out that the problem is bigger than I thought.
What I have: iPhone 4S with the latest iOS. What I want: sync old and new calendar entries and contacts with Google calendar and contacts.
In the settings menu of my iPhone I can select Exchange, standard Gmail or manually set up CardDav or CalDav, it does not make a difference. ONLY NEW ITEMS ARE SYNCED! This works two ways and with all the protocols. Existing entries however do no get synced from iPhone to Google. Since my google calendar is empty I couldnt try it the other way round. Adding a new entry in any of the calendars that already lies in the past will sync it immediately as well. This is not a matter of the date of the entry but rather when it was created (pre-setup or post-setup)