I use a another provider for international calls from my mobile: OneTel (although, this hint should work great with others). This service allows me to dial a local number, then, when prompted, enter the international number I wish to connect to and it connects me as usual. This works fine on the iPhone, in that I can use this plan as described. But my previous mobiles allowed me to set-up 'calling cards' which, when turned on, allowed me to dial the international number directly. The phone would then intercept this and dial the local number for me, then enter my destination number. This is, to me, indispensable on a mobile phone, because without it, you have to either memorize the destination number (or write it down again) so you can enter it after the prompt -- a cumbersome task while you're on the go.
Until Apple starts to more properly support calling cards, I improvised by writing an AppleScript which will create 'onetel' versions of the numbers I am interested in. I first created a group in my Address Book called OneTel, and placed within this group all the numbers that I am interested in dialing on my iPhone -- even if they're international.
I then ran the following AppleScript...
Mac OS X Hints
http://hints.macworld.com/article.php?story=20071112055244708