This is a truely annoying and longstanding issue that is still a problem in Windows 7. I have written a small executable that solves the problem for me by allowing you to specify a timeout up until which the program will keep trying to map the drive until it is successful. I have taken this approach after some fairly extensive research.
You can download the utility here.