Clean the side of the axle where you are trying to move the sprocket holder to. Wire wheel it, emory cloth, sand paper, steel wool, etc so you won’t be fighting it the entire way due to the friction from trying to slide it over a rusty, dirty, pitted axle. The key is a source of friction too, so I usually tap out the key from the keyway first. Use a pin punch of the appropriate size.
When you’re hammering it, try to protect the sprocket and holder from the hammer blows with a piece of wood. This spreads the force and adds a “cushion” between the hammer and the part.
Master Hack is right! The sprocket itself its pretty gosh darn worn out. Luckily the sprocket holder itself can be kept.
{Edited heavily}