SNIP ...passenger mainline trains going into the cargo stations and causing traffic jams.
I too thought this would be an issue, however, it is not. I will try to create a video of just how effective this system is to show you all that you only need 3 platforms to effectively service up to 20 trains simultaniously.
The biggest trick to solving your passenger train issue is to not run passenger services like they would in reality. Eg. 3 Stations "A, B & C" - In reality a common setup would see a single train service from A, through B, to C, and then back through B to start again at A. After a period of time, given population growth, this one train cannot effectively transport the commodity as quickly as it arrives. So, the common mistake people make is to increase the number of carriages, or make another train running the exact same route.
This is wrong on many levels.
The correct way to service these 3 stations is to link them individually. Run a single train from A to B, and a single train from B to C. Having only 2 stops means less chance of having too many trains fighting for one peice of track. To further my example, consider we have 10 stations on a single line, and we have 9 trains running the full length servicing all stations, now we let a further 10 goods trains share that line. If grid lock occurs, all of those passanger trains will catch each other, and be servicing each station right after the other, chances are they'll pick up 5 passengers tops, and run at a loss.
The best way to work out how many trains to run on a single line is to run half the amount of trains to stations - rounded up to the nearest number,
eg. 3 stations = 1.5 trains (round up) > 2 trains.
eg. 15 stations = 7.5 trains (round up) > 8 trains.
I hope this helps relieve the unwanted hair pulling in route structure and service.