We don't just need it to be random. We need there to be no way of ever quite knowing if any given order will beat another order to the exchange (within a given time period, of course). They won't know if they can beat joe ordinary, and they definitely won't know if they can beat the other HFT's. That might be enough to put a lid on it.
Edit: For those playing along, here's the metaphor. Joe goes to market to buy sheep. Bill knows Joe is going so he sends a fast runner ahead of him to buy the cheapest sheep in town first so he can mark them up and sell them to Joe when he arrives. We try making everyone wait at the town gate for a random amount of time to give Joe a chance to arrive and get through. So Bill (being very rich) just sends 10 guys so one is very likely to be let in before Joe anyway. Next we introduce the stochastic filter. We make everyone line up and then shuffle the order every once in a while, but Bill still has more guys so he might still get one in first more often than not. Finally, we add the token bucket. For every one guy that we know employed by Bill admitted, we make the next one wait twice as long to get in, so if Joe and 10 Bills show up, Joe and the first Bill are essentially on even footing again because the 2nd through 10th Bill would have to wait too long to matter.