You might also try putting a little grease on the starter shaft where the bendix rides. Check the bendix gears to make sure they aren't broken or chipped and check the ring gear on the flywheel while you have the starter off. You also can check for loose connections at the battery and starter. Sometimes low voltage at the starter can cause the starter to not engage fully.
It's also not unheard of to get a bad new starter. I worked on a crane once and we had to partially pull the engine to get the starter out. I spent more than half a day replacing the starter and when we went to start it, the new starter was bad.