You can use TalonSRX closed-loop for differential. We added this last season (for diff-swerve, diff-drive-train, and other similar mechanisms).
Basically you make one master talon calculate PID[0] + PID[1], and PID[0] - PID[1].
The former is applied to the motor. The latter is sent to your AuxFollower (talon set to follow with FollowType.AuxOutput1).
You could even run a primary PID to servo the difference/sum of the two sensors to maintain level, while open looping the overall up/down of the mechanism.
Similar post here manipulating two sensors to produce a sum/difference to servo/maintain.
MotionMagic with Aux PID[1] would be useful since your target mechanism is profiled along your single-axis, meaning Aux PID[1] maintains the sensor difference just like a turn-closed-loop during an arc.
Whatever you do, start by configuring the peak outputs to be very weak or disconnect motors entirely while you work out direction/phases/etc during hardware-bringup.