Best part about contract law in Canada (and much of the world) is you still get partial payment for partial work and the court gets to decide the value of the work.
They can do the easy bits, decide it's too hard/expensive to finish, take partial payment. The project may now both be delayed by years and someone else (who knows of the failed first attempt) may need to start over and will bid much higher.
The only real penalty is to prevent the private partner from tendering on future contracts. Of course, there are very few companies actually capable of handling a multi-billion dollar transit project in the first place so now you've effectively got a sole-source deal if you don't let them try again.
As we learned with St. Clair, helping smaller companies get experience to increase future competition is also a great way to kill the schedule. There is no single good answer, but since P3s allow for policy control beyond the elected term it's popular with politicians and bureaucrats who've seen the winds change far too many times.