Found the final missing piece.
https://wiki.archlinux.org/index.php/WireGuard#Loop_routing
Adding proper ip route add <endpoint ip> via <gateway> dev <network interface> for the endpoint allows the default route to work as intended. Now both the networking.wireguard.interfaces and manual wg-quick work as intended.