If playlists are set to shuffle, these are shuffled as the tree is flattened - shuffle mode, however, shuffles the already-flattened playlist. The way the tree is flattened is one of the ways that we can give lots of different behaviours with basically the same data.

I personally think the shuffling isn't thorough enough, it's on the list to seed it better and shuffle it harder :)

Hugo