Are you sure you aren't setting the DISPLAY variable on connect
somehow? For tunneled SSH sessions as setup by iSSH and other SSH
clients, typically the DISPLAY variable is a higher number like :10.0
or :11.0. You could try setting it manually to localhost:10.0 or
something to that affect, but iSSH should be doing the X11 tunneling
and setting up the variable correctly. The only time I haven't see it
do so is if the tunnel wasn't permitted on the server side for
whatever reason (including simply allowing the X11 forwarding, as you
have already verified it's not doing.)
Dean