The Monte Carlo traversal seems biased.
When an event is reached, the maximum of the event timestamp from the current trace and of any previous timestamps from any previously traversed, finished traces is taken. That is, when an event as reached, it is assigned the global maximal timestamp ever found out for that event. That should probably not happen, as each trace should be isolated from the others and only the maximum of total times of the traces should be taken.
The problem might be more clear after the algorithm refactoring (which is on the way in time of reporting this bug).