Routing VPN (?) Failover

Hello,

I have 4 locations (location A,B,C and D). Every location has a sdsl internet connection with static ip and internet provider router (no MPLS).
There are also wireless point to point connections between the locations (motorola PTP).
Wireless Point to point connections are:
between location A and B
location C and B
location D and B.

We want to use Mikrotik RouterBOARDs for routing the traffic between the locations.
when one point-to-point link is broken between 2 locations, we want to route the traffic over the dsl lines (failover) between the 2 locations.
Also we want:
if dsl and point to point connection at location B is not available, location A and C have the possibility to use a internet VPN to destination D.

For my test environment:
I have installed mikrotik on 2 PCs with 3 NICs in a test environment. one NIC will be the LAN nic (ip segment at one location).
The other 2 NICs are the wan links (emulating point to point and dsl).

So the i have configured the NICs:
Router 1:
LAN NIC - 10.0.0.0/8
WAN1 NIC - 192.168.20.1/24
WAN2 NIC ß 192.168.21.1/24

Router 2:
LAN NIC - 172.31.242.1/24
WAN1 NIC - 192.168.20.2/24
WAN2 NIC - 192.168.21.1/24

My idea:
I will create vpn tunnel between the WAN nics. So in my test environment are 2 vpn tunnel.

Later,with all 4 locations:
VPN A<->B with Point - to - point (routing cost 1)
VPN C<->B with Point - to - point (routing cost 1)
VPN D<->B with Point - to - point (routing cost 1)

VPN A<->B with DSL (routing cost 2)
VPN C<->B with DSL (routing cost 2)
VPN D<->B with DSL (routing cost 2)

VPN A<->D with DSL (routing cost 3)
VPN C<->D with DSL (routing cost 3)

I add routes (different cost) for the LAN segments on every router.

How can i configure to use the second ip tunnel if the first fails?
Is this the right way?
Or is there a better way?
Do i need vpn for Point-To-Point and DSL?

Maybe somebody can give me some tips.
At the moment we are not using a dynamic routing protocoll, we are using IPSEC VPNs and we are switching the endpoints in the vpn configuration manually.
I think it is possible no to use dynamic routing (maybe use later)?

Thank you

Regards