Ca²⁺ is the more important ion, since limescale is mainly calcium carbonate (CaCO₃). Otherwise, the explanation is fine.
The exchange of the ions is driven be the difference in concentration between water and resin surface. It works both ways, but Ca²⁺ is preferred (=stronger bonds) by the binding groups (e.g. carboxylate salts). That's why a concentrated Na⁺-brine is needed to flush out the calcium ions.