If you connect verbose does it tell you about anything failing regarding X:
ssh -X -v [username]@[hostname]
(Not sure if there is an equivalent on windows SSH clients?)
Also, when connected, does DISPLAY actually get set to anything:
echo $DISPLAY
(I can't try it at the moment but if I remeber correctly sshd normally sets this to the forwarded display on connection)
Last thing (the long shot) are you overriding the DISPLAY variable by setting it to anything manually in .bashrc/.profile/.bash_profile/whatever (that's the sort of thing I do and forget I did it

)