Hi Cjay, at long last it was successful! Thank you very much for the assistance! And thank you to everyone that tried. In the end the final change was in 3CX as supplied by Cjay.
Lines Manage / Click Gateway Name / Registration Settings / Select : Use registration's 'Contact' field host/port instead host/port specified in configuration.
Then on "Location of Destination Number" Tab make sure "'Request-Line-URI' field" is also checked. That was what made the difference for me.
The actual SPA setup remains pretty much as 3CX describes in the support section. After the many many hours I, and many others, devoted to this - if anyone needs copies of the various setup screens, especially if you are in North America, just PM me and I will provide.