I would check the voltage between the large terminal on the starter and the tractor frame while the engine is cranking. If it is much less than 11.5 volts, you may have a bad battery cable (either one). If the voltage is good and you're sure the starter is good it might indicate a bind in the engine or transmission. If the tractor has hydrostatic drive you can disconnect the engine coupling fairly easily to isolate the problem to the engine or the transmission. Try removing the spark plug and see if the engine still cranks slowly with no compression.
Bob B.