It's working well for home run review and I agree with others in this thread it can be expanded to calling balls/strikes.
Things happen on the field very quickly in response to out/safe calls. One things leads to another and in rapid succession. Very hard to unwind and make right the events of a play if an "out" call was changed to "safe", or the other way around.
Runners on 1st and 3rd. 1 out. Batter hits into a 5-4 fielder's choice with an E3 on the play (error at first).
The runner at 3rd base got looked back, was not able to score on the play. Remains at 3rd.
Batter takes 2nd base on the error.
Play is challenged and upon further review, base runner was safe at 2nd.
The error at first is not in dispute, so what do you do with the 3 base runners?
Load the bases? Not fair to the batter who should be at 2nd.
Award the run from 3rd with runners now at 2nd and 3rd? Not fair to the fielding team where the slowpoke at 3rd could not score even with the ball getting thrown all around the infield.
Not saying we should not have more automation, just saying baseball is different in some ways that make replay review hard to do fairly and consistently. It's the nature of the game - and a beautiful game it is.