I've used Booking.com without a problem. Just make sure they have the best rates. The cancellation policy can vary by hotel, so when you want to book, check the specific language for your hotel.
The other issue with any 3rd-party agency is whether the hotel gets the information from them. After you make your booking, you can follow up with the hotel a few days later to ensure they are aware of it.