cgr: Fix arrival time calculation for query time
The arrival_time function was using departure_time (contact start) as the
initial time, but should use start_time (query time when we were at the
source). This caused incorrect arrival times when the query time was after
a contact's start time.
Found by fuzz testing.