I do not have a WP as of yet, but did look at a couple of traces. What I noticed is that the device is telling the backwoods PBX to use various ports as a CONTACT. In one case it is 38205, another is 39439, another is 41950 and 59027 and so it goes.
I saw where a call was made, but still no response from backwoods. I see subscribes made and what is interesting is that the subscribe is made from the WP and so is the 200OK, there is no response from backwoods.
I assume you have random ports enabled. You mentioned that you have specific rules for the WG router and am uncertain how it is set and how it may react to the random ports. To me, the issue is that the phone is sending the requests, but for whatever reason the contact info is using a local IP and a random port.
for the audio.
Normally, I would expect to see a NAT IP so the remote backwoods SIP server would know where to reach the WP via a public IP.
I did not notice a “good” capture where all is working, so I have nothing to compare against, but suspect that the provider is using the IP seen at the initial registration and then upon subsequent messages sees the variations and starts to react to the message as if it were a re-INVITE.
For testing, you might want to try and disable the random port and use one for which the WG router is specifically forwarding and then input a NAT IP so that the WP messaging will always refer to the same public IP where it is located.