Thanks guys. I am running 3.1.1 now with 16x microstepping (with interpolation) and it is working fine. I noticed that this version can't handle full speed on X and Y at 256x microstepping like version 2.02 did, but it sounds like 16x is kind of the norm.
In retrospect, that was really old firmware. I just didn't think to check, since the board was a relatively new purchase.