Actually, you need a bit of training to use the on screen keyboards. I, too, was wedded to my HTC phones for their kbd, and had troubles at first with the iPhone because I didn't understand how they work. The capacitive screens see a potential rise which is centered around the contact point - like a big bump or hill - not a single x,y location. The OS (well, drivers) then reduce that potential field to the most likely point. I believe that for the keyboard, additional processing is done to predict what key you are more likely to hit based on the typing in order to increase your chance of a correct keystrike in a borderline case.
The key (ha!) is to press the key you want like you mean it. Don't try to finesse it or you'll probably end up with the potential field skewed one way or the other. Once you realize that you don't have to touch just the key you want, it gets much easier. It's basically the opposite of how you deal with a chicklet keyboard.
It works, mostly. M and backspace suck mightily, and there is occasionally confusion in the U-I-O recognition, but for the most part it's as good as a physical keyboard. The biggest beef I have is that there are no arrow keys.