Maybe they should fix their websites and refund / cancellation policies. No one would mind booking directly from a hotel website if they offered the same price, convenience and guarantees that booking does.
Booking.com does nothing special, it is the hotels that charge your card, and pay a commission to Booking.com. The only thing is that they enforce some common policies. Hotels give power to the marketplaces and then Stockholm syndrome kicks in.