Great times for Xamarin.
Just last week I downloaded the MonoTouch toolkit and will experiment a bit with creating a multi-platform (iOS / Android) app with a partially shared codebase in C#. So far I like the following things about the MonoTouch toolkit:
a) UIKit methods / classes are called more or less the same. Don't need to look up the API much.
b) from what I understand, it should be possible to create my own wrappers around Obj-C (iOS) or Java (Android) objects.
c) Create optimised user interfaces for each platform. This is the part where the code will differ mostly.
d) MonoDevelop is a nice, though somewhat sparse / limited IDE. I really hate the future creep of Eclipse and imo Visual Studio could also use a little trimming in the UI - otherwise a fine product though. I love Xcode.
Regarding your point about MonoDevelop, I won't spill the beans but Xamarin is preparing something exciting to fix IDE problems right now.