Just come across this app for spoofing the caller ID of a voice calls (does shit loads of other things too) and it works really well in the tests I've done.
You get five minutes free to test then you have to pay for call minutes $9.95 for 45 minutes (around 17p a minute after conversion - cheaper than many PAYG tariffs for normal voice calls.)
They charge because it makes a call out from your phone (set it to the UK dial in number to avoid international call charges !!) to their PBX and then dials out from there with the spoof caller ID connecting your call to the caller which is the only way it can be done direct dial from a mobile.
Spoiler:
Social Networking Bookmarks