¿Por qué no usando el %age? Lo que puedes hacer es activar el Lock Path on Interaction, así el Translation permace restringido al path ante la manipulación.
Si usas el Constraint to Curve (param) es lo mismo en este caso, pues deberás usar el valor de U, que supone la longitud de la curva.