I've been a devotee of IPv6 for years now. I bought, and continue to use, an AirPort Extreme because of it's support for 6to4 and tunneling.
Long story short, I've discovered that when an iPhone with IOS 4.x is connected to a WiFi network that's got an IPv6 router serving a globally reachable prefix, it will, in fact, use it!
Here's proof: The Dancing Kame on an iPhone.
This page has logic on it to detect whether or not you are fetching it with IPv6 or not, and though you can't see the animation in the screenshot above, the text surrounding it is different than what you get over IPv4.
So, Apple.... what's stopping you from at least optionally supporting 6to4 over 3G?