I spent 6 hours yesterday trying to get winpwn & 2.0.1 to work but after a roller coaster ride thinking I killed my iphone 2G I ended up reverting to 2.0. However, after doing more research on the web and digging around the log files I effortlessly got 2.0.1 to work perfectly. Here's my tips - please reply if this helped you
1) Problem: Winpwn crashing whilst creating ipw or itunes error 6
The word on the web is that default the root partition is not the correct size. iPhoneUpdater log files suggest the restore is failing when trying to read from the newly created root partition.
My solution: Use 512MB as the root partition and not 500MB.
2) Problem: itunes error 1601
I suspect this is a communications problem between itunes and the iphone and is a time-out error.
My solution: Follow the usual winpwn instructions. When you shift-restore the iphone screen goes white and you will hear the windows hardware disconnect sound. Usually you will then just sit there and wait for the error 1601. What I did was to
kill itunes (i.e. click iPwner button again) a few seconds after hearing the hardware disconnect sound. The iphone's screen stays white. Restart itunes and it will ask you to restore iphone (again). Shift-click restore and this time the iphone's screen should show the apple symbol and everything WORKS.
Troubleshooting
The best way of debugging this is you look at C

Documents and Settings\[username]\Application Data\Apple Computer\iTunes\iPhone Updater Logs and if the latest iPhoneUpdater text file is 7KB then that is a 1601 error and if it is ~570KB then it is a success.