The call is questionable to two reasons. The rule says immediate. The call was not made until the shortstop seemed to be called off by the left fielder and the ball dropped between them. If it is truly "ordinary effort", it should be easy for an umpire to determine infield fly, not such a last minute decision.
The second reason is based on your quote:
The rule is to protect the batting team FYI. To keep them from dropping it on purpose to get an easy double play
In the spirit of the rule would this have created an easy double play for St. Louis and clearly the answer is no because the base runners were able to advance.
I am not saying it was wrong, just questionable.
This post was edited on 10/6 at 1:33 pm