I've just tried to duplicate your situation, and there's good news and bad news. Sometimes it works, and sometimes it doesn't. I, being a mere mortal in a land of many gurus, have no explanation, but here's a few thoughts.
If you're running the vncviewer binary on the windows machine, there's no need to set the x11 display in putty, because you're not forwarding the display, per se - the vncviewer is looking after that aspect of thing. This may present a conflict.
Secondly, even though I can't explain why, I had more success when I checked the first two boxes in the tunnel dialog - local ports accept connections from other hosts, and remote ports do the same (i can't see the first making a difference, but the second might...) I might add that a couple of times I succeeded even when these boxes weren't checked.
Thirdly, in your vncviewer dialog, ensure that the server address is localhost:1, and not localhost:5901; also, though I believe more recent vnc distros allow simply " :1 " and the viewer assumes localhost, my windows version doesn't.
As stated, sometimes identical settings provided different results, so I'm lost as to what the reasoning is. I'd reboot both machines to start fresh, but I've got great music playing.....
hope this helps some...