The number of times that a game can let a player-created story branch off has to be limited. Which means that there will be some junctures in the story where the player can't branch the story. Like the Assassin's traitor, for example.
Nature exhibits the same approach. I remember watching a documentary on the ecosystem of the North West Coast of North America. In it they said that there were key species in the ecological chain that were critical to the proper functioning of the system. Other species could come and go, but the loss of particular species would destroy the whole environmental life chain itself. Plots and sub-plots could be built and resolved in similar fashion. The Witcher seems to be taking a pretty decent stab at the non-linear user-defined plot thing.