To try and resolve the issue, I created an Oracle VirtualBox VM directly from the VHDs. Just in case the issue was caused by the Winimage conversions to vmdk files. However what looked like the same issue occurred with the Oracle VirtualBox VM. The machine continuously goes through a cycle of booting, BSOD, booting etc. The cycle was so fast I couldn't see the exact BSOD.
However, using screen capture on Oracle VirtualBox, the BSOD turned out to be 0x0000007B. This means the VM couldn't recognise the boot drive. The solution in Oracle VirtualBox was to remove the virtual SATA controller and add an IDE controller and reattach all the drives to the IDE controller. It turns out the Azure VM for 2008 R2 doesn't have appropriate SATA drivers. http://nickberardi.com/dealing-with-0x0000007b-blue-screen-in-virtualbox/
For me using Oracle VirtualBox is nearly as good as VMWare Workstation, so I've left it at that. Hopefully the solution will be similar in VMWare Workstation.