Google made some changes to the Pixel Android code earlier this month which broke PixelIMS which is the app I was using to control wifi calling settings on my Australian SIM as the telco themselves blocks changing them. Without PixelIMS, that SIM will prefer using a mobile network (even if I'm roaming and don't have the ability to make calls over it) rather than Wifi or "Backup" (IMS) calling.
So I finally got around to asking the provide if they could completely disable roaming on my SIM. They originally said no, and that because I wasn't paying for roaming it was basically already off (even though it would still connect to the network and I could receive SMS). I pushed harder and they eventually found the setting to disable roaming entirely - and now everything works perfectly!! My Australian SIM jumps perfectly between wifi calling (when I'm on Wifi) and Backup calling (via a 2nd data sim when I'm not on wifi).
My US Sim (US Mobile) is setup exactly the same, and has never had problems. It's very clear that having roaming completely disabled on the SIM makes everything work so much better.