An alternastive, using QUERY function;
QUERY
=ARRAYFORMULA(QUERY({C2:E,TIMEVALUE(E2:E)-TIMEVALUE(D2:D)},"Select Col1, Max(Col4) Where Col1 Is Not Null Group By Col1 Label Col1 'DATE', Max(Col4) 'MAX TIME' Format Max(Col4) 'HH:MM'"))
.