I'm not particularly interested in native development, maybe I should be, but I've looked at a number of technologies, initially Flex with deploy via Air, then Phonegap and finally settling on Appcelerator.
Particularly for slower Android phones, Phonegap HTML5 apps really suck with many reviews having the classic "really like the app, but it was just too slow to be use-able". This is a killer and this issue will go away in the first world, but will never go away in the developing markets, just look at Aakash.
So at the moment, if you are careful with your component solution, Appcelerator offers (IMHO) the 'best' cross-platform native compile solution (it even has a webKit plugin so you can deliver HTML5 apps) for iOS/Android. Blackberry is in beta and I have no idea when WP7 will be supported.
One downside....you need to buy a Mac.