It seems PositionJointSaturationInterface and PositionSoftLimitsInterface entirely ignore the presence of has_acceleration_limits and max_acceleration, and immediately command the robot to go at the max velocity when a new target is set.
I'd be interested to think about adding support for these interfaces to read and use acceleration limits. Let me know if that is of interest.