Sure enough, that did it. Removing all repeated words gives me the following for Crime and Punishment:
method 1 2 3 4 5 6
--------------- ---- ---- ---- ---- ---- ----
mod(N,6) method 1584 1600 1551 1610 1493 1526
mod(N,9) method 1052 1057 1069 1084 1049 1035
rand function 1574 1517 1560 1546 1608 1559
Normalized sum of squared error (SSE) for mod(N,6) method = 6.66339
Normalized sum of squared error (SSE) for mod(N,9) method = 1.36464
Normalized sum of squared error (SSE) for rand function = 2.91115
Both the %6 and %9 are on par with the rand() function, just like your results.