I am assuming that you have sshd setup properly on your host machine. On your client machine, enter the following in Cygwin:
ssh -N -p #port username@hostmachine -L 3390/localhost/3389
#port is your hostmachine’s port number, if necessary. If you’re using the default port you don’t need this parameter. To connect open RDP and use ‘localhost:3390′ as your address. You can change this to pretty much any valid port as long as it’s not 3389 which is the default RDP port. Using this port results in an ‘already connected’ error. If you want it to run in the background, you can use key authentication ala my OS X tunneling post and then adding an ampersand to the end. You can also use screen.
Note that this also works for other ports you may want to forward like http, email, vnc; etc.
Source:
How-To: SSH Tunnels for Secure Network Access
Edit: Or you could just get this program, although Vista breaks some things. So far I haven’t figured out anyway to connect to an OS X VNC.