Book directly with the hotels if possible. Lots of hotels will forgo the 24-hour cancellation charge if you ask nicely. Hotels can't do much if you book with a 3rd party since you're a customer of the 3rd party, not with the hotel.
However, with flights and flight search websites I do sometimes see close to equal pricing, and in that domain I almost always check the airline website itself and book directly when possible.
Usually booking maximal a week before arrival. So maybe that's why?
Maybe it depends on where exactly, or what kind of hotels, how late you are with your booking, or the booking genius I have, however I had the exact opposite impression.
With flights it's a different thing, but it can happen as well.