FYI, My Gmail seems to just fine after I set it up on the iphone. Also check out Neuvasync. Its a free exchange server that handles Google Calendars, Gmail, contacts and pushes like an Exchange server.
My latest NeuvaSync Setting page shows Cal, Contacts, Email, and Tasks although All I really use it for is GCal Sync.
I Used the built in Gmail Account set-up thing in 2.2 and its might not be "Push" but it acts enough like it that I don't notice the difference using IMAP (It checks every 15 mins).