The DMZ should always work. It just passes anything that would otherwise be blocked by the firewall to the IP address in the DMZ. However, sometimes those ports are blocked upstream by your ISP. If that's the case, it doesn't matter what you do w/ your own firewall, it's not going to work. I suggest using ShieldsUp and/or the PFPortCheck to see if your ports are reporting open/closed when using the DMZ.