With the release of iOS 5 mail can now appera as a pop up box style notifacation.
Goto Settings>Notifications>Mail> the choose "Alerts" in the alert style menu.
you will then have something that looks like a message notification when an email arrives
Using iCloud doesn't really add new features for a Gmail user.
Contacts
Contacts on iOS are perfectly synced when using Google via Exchange.
Contacts on Mac OS X are synced using Address Book "Sync with Google" feature.
Calendar
Calendar is a bit more tricky.
On iOS, you have to activate each calendar individually in http://m.google.com/sync. But then, it syncs perfectly.
On Mac OS X, it can also be added to iCal, except it's via "Delegates".
It works but doesn't feel as just work as iCould does.
Mail
Mail has it's quirks, too.
On iOS, via Exchange, it doesn't bring all the Gmail goodness (archiving, etc.). And it miss push via the Gmail template.
On Mac OS X, via Mail, it's the same, archiving puts the mail in an "Archive" folder instead of the "All Mails" one.
Using an app like Sparrow resolve this issue.
To conclude, iCloud, like using the iWork suite instead of say Office, doesn't add value, but it feels more integrated with the OS (whether it's Mac OS or iOS).
Best Answer
Setting up via Exchange is my preferred iOS Gmail setup. In earlier iOS versions (I think 3.0) you were limited to one Exchange account. So in my case, that was reserved for my work email. But once that limitation was lifted, I switched Gmail to Exchange and have been quite happy with it.
You get push email, which is the main benefit, but you also get push contact/calendar updates. Depending on if you use Google calendar as your main calendar, push calendar updates and invites can be a huge help to managing one's day.
If you decide you don't need push while using Exchange (or ActiveSync, which is the specific mobile protocol used by Exchange and Google), disabling push is quick and simple. Setting up via ActiveSync also saves a few steps in that you don't have to link your calendar and contacts manually. So I say go for Exchange, even if you don't use push. But it's not a huge deal either way, and as it's so easy to add/remove accounts on iOS, if you pick one and don't like how it works out, you can always switch to the other with minimal effort.