Came up with another method to sort carts on a shared track: sub-tracks.
Carts going over series of alternating impulse ramps will keep moving at one ramp per step, but if the "odd" ramps all point in the same direction, the carts will get displaced to the side a bit (~1/29th tile) for each ramp. They typically start out in the middle of a tile, so it takes 15 displacements for the cart to leave the track.
So i built an alternating-ramp track
...... ......
▲▲▲▲▲▲ ╔║╔║╔║
###### ######
ramps track
which carts enter at different points (through the angled ramps, coming from above). Depending on where they entered the track, they receive more or less northward displacement (one, two or three portions in the example). At the end of the shared track, they run over even more alternating-ramps track and indeed, the cart that got only one bit of previous displacement needs fourteen more to go off the track, while the cart that got three bits takes only twelve more. It's quite easy to catch and reroute the "displaced" carts at their divergence points and convey them to separate target locations. My experimental setup takes carts from eleven input points and correctly moves them to their seperate eleven destinations, through a shared flat track.
Unfortunately, it only works with straight track. Every proper track corner eliminates all off-sets and replaces carts in the middle of the tile. Jumps on the straight path seem not to fiddle with the sub-coordinates, though. Stopping and re-starting the cart(s) leaves the sub-track settings untouched, as well, as long as they get re-started without getting handled by dwarfs, i.e. bumped forward by other carts or presumably accelerated by rollers. I only tried bumping with a cart: sent carts 6,1.8.3,10 (in that order) along the track, stopped them in the middle by a door, then levered open the door and smacked a push-and-ramp accelerated other cart into the queue from behind. Every time the queue was bumped, the first cart started moving again and went to its proper destination (6,1,8.3,10).
Theoretically, these ramp displacements could give fifteen usable "sub-tracks" when starting in the middle of the tiles and only displacing in one direction, 29 if using both possible displacement directions. The ramp arrays used for that purpose would quickly become impractically large, though.