That's a good point about 'out of state' issues. If SNAT is not used the ISA server will reply back using its default gateway, which is not the F5, asynchronous routing will occur.
As you said a work around would be to set the default gateway of the ISA to the F5, we have a HA cluster so it would have to use the floating IP to ensure its always available.
I looked into the x-forwarded header, also not sure if ISA supports it but I will investigate as i don't like the idea of not using SNAT.... anyone could logon to the server and change he gateway, whereas only a few people have access to the F5.