Mobile cross platform development

So... I have been looking into some of the frameworks that will allow me to write code once and use it on all mobile platforms (Android / iOS / Windows / BB etc). Although there are frameworks that allow your code to be ported across multiple platforms, they lack in the ability to give you the user experience that you desire. For example phonegap seems like a framework that I would like to pursue, but it does not support android widgets. Neither does appcelerator.These OS specific features are critical to provide unique user experiences. So what I would like to ask is...

Have you ever wanted to write a cross platform app ? How did it go ?

If you didnt take that route, how did you manage to write native apps for each platform and reduce the maintenance headache that comes with it ?

To those that have this question in the future, I have decided to stick with native app development for the following reasons.

1. Most frameworks play catch up with features available on native apps. That can become your ball and chain.
2. Bugs and how quickly they are solved will depend on those that maintain the framework.
3. There is some vendor lock with any framework you choose.
4. At the time of writing this post, Android and iPhone rule the smart phone market. So it is only a matter of writing apps for these platforms to cover 80% of devices.

However there is some merit in choosing a cross platform framework for small apps. Apps that do not need to take control of native features like widgets.