I can touch type np on the tiny iTouch keyboard (well, same size as iPhone, anyways). I can touch type fast, with high accuracy cause the keyboard accuracy is so high (the auto correct is another matter altogether
).
I never had issues on Android with the virtual keyboard. The FroYo and Samsung Keyboards were both very accurate for me and I could type really fast on them. The stock GB keyboard is even better and the ICS keyboars is way better than even the GB keyboard. Motorola's Multi-Touch keyboard is top of the line (HTC Android keyboard has a funky layout, IMO). The layout on the Samsung keyboard was more of an issue. I used Swiftkey and my keyboard accuracy map was right on target despite the fact that I typed like 40+ WPM on that smartphone. I could literally type on that without ever looking at the keyboard and I made very few errors, ever.
The WP7 keyboard had great accuracy up until NoDo. After that, it's borderline useless. I used to use my WP7 device to do all my messaging and emailing because the accuracy was simply superior. Couple that with a bigger screen, it was typing heaven. Now it's virtually useless. The keyboard was one of the reasons I basically stopped using my HD7 before I sold my Vibrant, but now I'm forced to deal with it for a while. I cannot type one sentence on that keyboard without making numerous errors. There are times when I know I'm pressing the right letter but it picks the letter next to it several times in a row.
It's embarassingly bad nowadays.