No doubt one of the railway pros will drop by, but my guess is largely timing and possibly cost. CP used have what I think was called the RoadRailer and I assume CN had something similar. If you are a manufacturer in Montreal, you have a driver and tractor to take you trailer to a railway loading yard. Rail crews will load the trailer on a suitably equipped car. It will sit there until a train is assembled. It will travel to Toronto (freight travel time unknown). In Toronto, rail crews will unload the trailer and drop it in a yard where another driver can pick it up and drive it to its destination. I imagine all of this took a couple of days. Each strt/end point needs ralatively specialized facilities.The cost is certainly not net zero, and getting more so. it that still begs a question - why do railways not move more truck based freight Toronto to Montreal, Moncton, Chicago, Winnipeg for example. Turn more long distance trucking into regional trucking.
Or you can drive it yourself; one driver in, what, 6-7 hours.
Longer distances probably make more sense which is why we see container unit trains.