I spoke to both Alex's teacher and the driver about what happened on Tuesday and got a rough timeline of events.
The transport company didn't notify the school that there would be a temporary driver until after 2 pm (after they'd spoken to me).
That temporary driver went to the wrong part of the school to pick Alex up.
The teachers and EAs, knowing that driver 2 would be the regular driver, thought that they must have had the start date wrong. Driver 2 did not have our address and was trying to reach the transport company to find out what went wrong.
(This is the point when they should have called me as a parent to make the call as to having driver 2 take Alex home or have me come to pick him up.)
After twenty-thirty minutes, Driver 2 got the information she needed and set off to bring Alex home. Alex was quite upset at this point and Driver 2 was in a rush as she had another run she needed to do.
After Driver 2 left, the temporary driver arrived at the correct pick up location and asked to pick up Alex.
So, the greater part of the problem lies in the transport company's terrible communication, an ongoing issue. But the school should have contacted me rather than trying to solve it themselves. I gather things got rather tense and the VP has instructed the teachers to contact me rather than deal with any driver issues themselves.
On the plus side, Driver 2 called me personally to talk about the situation, apologize and find out about Alex. We had a good conversation and I'm confident in her ability to deal with him. I'm still filing the letter with OSTA, the school board and the transport company, because what happened was absolutely inexcusable and needs to be on record. But hopefully this is the last time I'll have to worry about it.