A very good analysis from the two posters above.
A slightly longer than 10 second look at Realtimetrains shows that not only do you have the above, in fact you have a whole series of trains within 3 minutes of each other:
17:15 to Kidderminster (non-stop to Leamington Spa) - catches up with 17:02 to High Wycombe at High Wycombe (train immediately in front is 17:11 to Aylesbury via Amersham, so this train has a clear run from Neasden Junction).
17:18 to High Wycombe - Runs 3 mins behind 17:15 until Princes Risborough where it decelerates for Haddenham & Thame Parkway
17:21 to Banbury - Runs 3 mins behind 17:18 extending to 4 mins by Denham Golf Club - first stop is Beaconsfield
17:24 to Bicester North - Runs 3 mins behind 17:21; First stop Wembley Stadium and then Denham - gap extends to 5.5 mins by West Ruislip
17:27 to West Ruislip - Runs 3 mins behind 17:24; Has 2 mins added to the schedule between Neasden South Jctn and Wembley Stadium to allow for the train in front stopping at Wembley Stadium, and then has a first stop at Sudbury & Harrow 4.5 minutes behind the train in front.
So....if any one of those trains has a delay there is going to be a knock on to the services behind. Having five trains leaving one behind the other within 3 minutes of the previous one, but in particular with the second last having an extra intermediate stop, it is going to be tight at the best of times (even with the pathing allowance)!