This problem seems to randomly affect people, the only common factor seems to be Vista. You've obviously already tried running as administrator? Different USB ports? Rebooting and making sure nothing else is running?
No one seems to have found a solution.
A work round is to put the custom ipsw in the iPhone Software Update directory and use update in iTunes.