Why am I seeing the same 3 Spider Solitaire games today that I saw 2 days ago
The random number generator could have been seeded with the same seed, which would cause the same sequence of random number to be generated. The RNG in Microsoft's C library repeats every ~32,000 numbers (which is pretty abysmal), so there's effectively only that many seeds.

Different seeds:

&gt;perl -E"say srand; say join ' ', map int(rand(52))+1, 1..10;"
1819759215  # The seed
41 35 23 9 35 2 41 11 50 51

&gt;perl -E"say srand; say join ' ', map int(rand(52))+1, 1..10;"
994223390
47 13 12 51 35 7 37 42 11 2


But what if the same seed was picked the next day:

&gt;perl -E"srand(994223390); say join ' ', map int(rand(52))+1, 1..10;"
47 13 12 51 35 7 37 42 11 2