If Steve Jobs says the iPhone comes with Visual Voicemail, the iPhone really comes with Visual Voicemail. We simple users of the device don't get to disable it. That is unfortunate for those of us who travel internationally, because voicemail is really expensive when roaming abroad. The problem is that phone networks are also really dumb. All calls have to go through your home country, where they're forwarded to the roaming network, incurring international charges. Then, when the roaming network decides your call needs to go to voicemail, it sends the call back to you home network—incurring international charges a second time. You would normally call your voicemail box for the hat trick, and most of the time, the message is "Can you call me back?" or, after a long story, "I'll just e-mail you." (Can you tell that I'm not a big fan of voicemail?)
With Visual Voicemail, the first two steps and the last one are the same, but the good part is that you normally don't have to call voicemail: it's delivered to your iPhone where you can admire it in full visual glory. It turns out that the iPhone downloads voicemail messages over its 3G (or 2G) data connection, but not over WiFi. So, when I was in Dublin (where I turned off 3G data roaming to avoid the insane data roaming fees), I was presented with a badge on my phone icon that told me I had a message. But because the iPhone couldn't, well, phone home, it couldn't download the message—or even tell me how many messages I had. The badge was just a sad, empty circle. Strange.
However, if I had investigated a bit more, I would have known that even though the iPhone GUI doesn't let you disable voicemail, you can do this using industry standard GSM codes. If you look here or here you can find long lists of these codes. Experimenting with these codes shouldn't be harmful, except for one thing: you may "unregister" your voicemail forwarding in a way that it's not possible to manually enable it again unless you know the number. (The iPhone will probably do this for you if you restore it, but I didn't test this.)