In all of the missions I've created, I have done my best to make the AI vessels obey general shipping rules (e.g. on the Starboard side of channels etc).
But, there are many logistical reasons why this sometimes gets sacrificed.
Consider that if the Creator lays down two AI tracks. The vessles in them look like a procession (ducks lined up), not at all like "real" shipping. So the Creator makes one AI track take a port-side channel and the other goes straight ahead. He may make them tack around a bit as well.
But now, the vessels are only going in one direction, which still looks too simplistic. So, the Creator lays two more tracks, one each alongside of the existing tracks, but in the opposite direction.
Instant problem. The new AI tracks must cross over the existing ones if the rule of "starboard side" is to be followed. But that causes PCs to crash and missions to fail and worlds to collide.
So, the Creator is forced to make the two pairs of AIs not cross, with the result that some traffic is now on the wrong side and someone who is ignorant of these limitations will complain (see above).
And that is just with two sets of bi-directional tracks. Even then, it is a pretty unconvincing set of scenery.
Many of us do our best by implementing "small vessel channels" e.g. Portsmouth & Southampton. We place static vessels facing in the appropriate direction to give th eillusion of correctness, but the game has limitations.
PS I presume by "driving between the marks" you mean in the buoyed channels? That's not what they're there for. It is perfectly acceptable for vessels to go either side, provided they have the appropriate draft. For example, going up Southampton water, the buoys are for the guidance of very large vessels. In any case, with a 15 foot+ tidal range, it can be plenty deep enough for large vessels to go either side at the appropriate state of the tides.
Ferries don't always have priority. In many harbours there is an independent small ships channel, so motor boats (to use your description) and Ferries don't interact.