This, with setting your personal domain in gmail as the default send, does work... But on Outlook (for example) it'll say that your emails are from "myusername@gmail.com" on behalf of "myusername@personaldomain.com". Doesn't look too professional sadly.
I think Apple will need to give an option to send as your personal domain by default (this can be set already), and also obey that setting when sending via their smtp server (currently it doesn't seem to). Then we won't need to rely on external smtp servers.
Here's what I did to get it to work (at least with Comcast). I have everything forwarded to my MobileMe account and on my iphone, I've added an account under "Other" in the Mail, Contacts, Calendar settings.
1. Click Add Account in Mail settings
2. Click Other, then Add Mail Account
3. On the New Account page, enter your mobileme account info. It will then look up your account and put you into an IMAP settings page.
4. Under address, enter the email address that you want people to see (myusername@personaldomain.com).
5. For incoming mail, enter email.me.com and your mobileme user/password
6. Under outgoing mail, enter your personaldomain.com smtp server as well as whatever username and password you use for that. Click Next. It will verify your account information and on the next page will show IMAP at the top and give you options to choose Mail and Note syncing.
7. Click Save. It will configure the sync.
8. Back under the settings/Mail, contacts, calendar area, click the account you just set up and go into the account info tab. Click the outgoing mail server and on the next page make sure only the server your using for your domain is showing (this may be an optional step, not sure)
Because the email is coming through as your personal domain (step 4 above) I don't think google forwards additional header information which cause the "on behalf of" message. I just tried it with my gmail and it works. This DOES NOT work if you add the account by clicking the "MobileMe" option under Add Account. It has to be done through other.
And if for some reason I am wrong on any of this, apologies in advance--I've spent the last two days trying to get this working right and I believe the above is how I did it
EDIT: Based on reply #8 above, this may not be using push email. It works well enough for me and syncs with all of my stuff, so if Push is important to you, it might not be the fix you need.