Say I have a date object `date = DateObject[{2016, 7, 17, 0, 0}]`, how do I later change the hour of that date object, without needing to know the value it currently has?

I'm searching for something like `date /. Hour -> 18`, but can't find it in the documentation, just that 
> DateObject allows addition and subtraction of time quantities.