OP did you test your new script yet confirming it can detect to the milisecond when there's heavy flow of deposits ?
It is extremely doubtful that the script couldn't keep up with such a small amount of transactions. Probably what happens is the IPN is looking at the transactions in order it sees, but it is a massive race state around the globe until the transactions are planted into the blockchain. There are probably multiple versions of lists until a version is accepted by the node that blockchain uses. Maybe they exist differently for a very long time.
Additionally around GMT 00:00:00 I did a series of transactions. There is a wide variation of when they are listed in the blockchain. The lowest times I saw was 2 seconds, the longest was 6 seconds with most times either 3 to 4 seconds.
Today the play out time period was less than 3 seconds, which is less than the variation seen in just sending transactions and when they end up on the blockchain. At this point one would be better to just play a dice game since the overhead is lower and the results are mostly random. ~1% for a dice game vs 6.5% for the Ponzi, based on the deposits.