Why doesn't my Wireguard interface switch wans on connect/disconnect?

HI! i was curious as to why my wireguard won't respect the set metrics. I have two wan's. one is considered as a backup, and the other is a 5G device that's much faster than the "backup" wan. The slower wan has a metric set to 20, and the faster one set to 10. The VPN interface has a metric of 30. I noticed that my wireguard interface will only switch into the faster wan only if i manually restart wlan0 interface. if i restart wlan1 interface, it makes no difference and doesn't switch. is there some way to automate this? its kind of a bummer to have to basically unplug the thing every time i turn my phone's hotspot on.
-I have tried unchecking "force link" on the sticky wan and wireguard in hopes of it fixing but still nothing.
-I have tried setting up static routes, with no noticed help.
-I have checked and made sure the "route allowed ip's" option is checked, with 0.0.0.0/0 as the address.
-I have tried creating different VPN interfaces, but openwrt mixes them up, even with static routes
-I have tried messing with the ifup/ifdown settings in mwan3, which has been set up according to the openwrt article.
-I have tried setting the rules and the mwan3 interface up according to this link

What should I try now? i have an EX6100v2 running openwrt 22.03
let me know if you need more info

Thanks!