My guess would be that the random number generating function is fine. After all, think how hard it would be try and write a random number function but actually write something that produces the results we are seeing. The bad code would be obvious. Instead, I suspect that the code is not being called properly. Consider this outline for the code:
Whose turn? - Player 1 What do we need to do (accept double, accept draw, roll dice, etc.) Roll dice Show dice Player 1 moves Player 2's turn What do we need to do (accept double, accept draw, roll dice, etc.) Show dice Player 2 moves
It would be pretty easy to bury a bug that could give us the results we are seeing with something like this.