Lewis Hamilton and McLaren did everything absolutely right and took a deserved victory in the Canadian Grand Prix - but they could have been beaten by both Fernando Alonso and Sebastian Vettel if Ferrari and Red Bull had correctly called the race.

Alonso and Vettel slipped back from second and third respectively to fifth and fourth in the closing laps because they were trying to make a one-stop strategy work.

Alonso was a sitting duck in the last five laps as his tyres wore out completely.

quote It's obviously not easy to analyse these things on the fly - and there is a lot of pressure on the engineers involved to make the right decision

He lost places to Lotus's Romain Grosjean, Sauber's Sergio Perez and finally Vettel, as the German recovered from making a late second stop for fresh tyres with seven laps to go.

I wrote in my post-race analysis column on Monday that Alonso and Ferrari could have beaten Hamilton had they have come in for a second stop before the McLaren driver.

But after looking through the numbers in more detail, it is now possible to see that both of them might have beaten Hamilton if they had made second stops after him as well.

If you analyse the lap times from lap 48 - two laps before Hamilton's second pit stop - to the end of the race, you can see Alonso losing time steadily as his tyres go off.

You can then compare Alonso's lap times to team-mate Felipe Massa, who stopped on lap 58 for fresh tyres.

If you give Massa's lap times from that point to Alonso on the assumption the Spaniard should at least have been able to match them (he'd probably have gone significantly quicker), Alonso is 1.5 seconds ahead of Hamilton at the end of the race.

When Massa came out of the pits, he was going at least a second faster than Alonso within a lap - and it soon became two seconds as Alonso tyres got worse and worse.

Canadian GP result 1. Lewis Hamilton 1:32:29.586 2. Romain Grosjean +00:02.513 3. Sergio Perez +00:05.260 4. Sebastian Vettel +00:07.295 5. Fernando Alonso +00:13.411 6. Nico Rosberg +00:13.842 7. Mark Webber +00:15.085 8. Kimi Raikkonen +00:15.567 9. Kamui Kobayashi +00:24.432 2 10. Felipe Massa +00:25.272

So Ferrari should have seen Massa's progress as soon as he came out of the pits and realised they were going in the wrong direction with Alonso.

To be fair to Ferrari, by lap 58, although it was obvious Hamilton was going to pass Alonso, it was not completely clear that Grosjean was going to catch him by the end of the race. When you consider the Ferrari's speed that point, it looked to be close.

But two laps later, with 10 to go, Grosjean was suddenly lapping more than a second faster than Alonso and was 10 seconds behind - and Alonso's lap times were dropping dramatically.

At that point Ferrari should have known he was going to lose not only the lead but second as well, and come in for tyres.

Alonso would have lost the place but Grosjean - who did make a one-stop strategy work - had been on that set of tyres since lap 21. Alonso's would have been 50 laps fresher, and he would easily have caught Grosjean again and passed him.

In the case of Red Bull, if Vettel had done the same as team-mate Mark Webber - who stopped for tyres on lap 52 - and then done the same lap times as the Australian, he would have been four seconds ahead of Hamilton at the end of the race.

Even if blind to anyone else, both Ferrari and Red Bull had access to their own team's lap times and that should have made them think about what they were doing.

It's obviously not easy to analyse these things on the fly - and there is a lot of pressure on the engineers involved to make the right decision - but they have computer programs that analyse these things for them in real time and project finishing positions.

If that is not showing you what you want to see, you have to change your plan. So they really should have responded.

Had they done that, they should have been able to catch up with Hamilton and, as they had fresher tyres than him, they may well have been able to pass - although with the proviso that Hamilton was only going as fast as he needed to in the final part of the race.

But even if they had not been able to get past, they both would at least have held onto the positions they were in at the time - second for Alonso and third for Vettel.

In Ferrari's case, that decision cost Alonso at least 10 points, and Vettel lost three. In a championship as tight as this, the title is likely to be won - and lost - by a lot less than that.