For things that need that level of protection (risk/reward calculation justifies the extra expense, given the low probability of occurance -- unless you're buying really shoddy switches they just don't fail very often) I just dual-path everything -- two switches, one hooked to an on-board NIC the other to an off-board NIC (preferably different models/manufacturers, to protect from driver/NIC failure), then the edge switches hook to a pair of distribution or core switches (as appropriate), which then hook up to a pair of core routers, and so on. Everything's duplicated.
Bonding is configured to test links via ARP and cutover to the other switch in the pair if, say, a core switch dies (although everything is cross-connected too). Let spanning tree deal with the redundancy, which in my experience is a lot more robust than the author of those slides suggests.