I've generally heard exactly the opposite.

If you book a hotel directly and something gets screwed up, the hotel is able to change your reservation or refund you directly.

If you book through a third party, the hotel can't help you since they don't have your money, nor can they change the reservation since they didn't make it, the third party did. You have to talk to the third party, and then the third party has to talk to the hotel. It adds additional steps for all interactions.

"If something goes wrong with the hotel own booking system..." - the third party is using an interface into the hotel's own booking system, and that can introduce problems of its own.