Did you ever make progress on this?
I am also stumped on Fidelity. The error I get back is
400 Bad request element type "SONRQ" must be terminated by the matching end-tag "</SONRQ>"
If you look at this request, there is clearly a "</SONRQ>" tag.
POST https://ofx.fidelity.com/ftgw/OFX/clients/download HTTP/1.1
As to GetFX, I've played with its source as I try to create my own. As you note, it doesn't work. I added end tags for all the XML and got it to the same point as my own code: error message about </SONRQ>.
Let me know how you are doing on this!!