It took me awhile to track down the problem but I finally managed to pinpoint the root cause. There is a new component in Vista called "Microsoft Transient Multi-Monitor Manager" that manages the switching of displays. By default, it is configured to run everytime a user is logged on (apparently, unlocking your desktop is considered as such).
To solve the problem, follow the steps below to disable it.
- Open up Computer Management window. i.e right click on Computer in the Start menu and select Manage.
- Expand System Tools -> Task Scheduler -> Task Scheduler Library -> Microsoft -> Windows and click on MobilePC.
- In the top middle pane, right click on the item named TMM and select Disable.
- Reboot your PC.