Allright, so my work got a bit delayed due to illness but the level generator is now up and running complete with height differences and special track pieces.
I designed a system where whoever designs the track parts can mark where the track piece connects to the rest of the track and which other tiles it occupies. The system then finds valid locations for all special pieces and randomly assigns pieces that fits into the track.
The level generator now also supports several options to customize which features the customized level will have, like how straight the track should strive to be or over how large an area the level should be generated which affects the average track length.
And finally I uploaded a small video showing of the level generator in action and a short run of a level in-game.