Yes, it is pretty normal that the number of steps (or step signals sent to the driver) and the number of encoder counts are NOT identical.
It depends on the settings of the driver (in many cases you can define microsteps, i.e. a certain number of steps between the 'hard steps' of the motor), and of course you have to match the number of step signals to the (microstepping rate) * (number of motor steps per revolution). Another problem is that some manufacturers define microsteps as 'total number of steps for one revolution' while others define them as 'number of (micro)steps needed to perform a complete step of the motor'.
Also, it seems strange to me to connect the encoder to the driver. How do you get encoder feedback to the FlexMotion if the encoders are actually connected to the driver?
In many cases you can detect the number of steps and encoder counts per revolution with MAX. Set the step rate such that the motor will turn one revolution (according to microstepping rate). Then disable the driver, set MAX to 'closed loop' and turn the system manually approx. 1 revolution. MAX will indicate the number of encoder counts. Take the next even number (e.g. if you see 1890 encoder counts it is very likely that the encoder issues 2000 counts per revolution), and start a motion again with these values.
The jerky motion in your case is caused by the FlexMotion card to compensate the discrepancies between encoder counts and steps. This happens only if you set the following error rate very high (I think the default is 32768). In most cases you should set it to a much lower value, I think 1/10 of the number of encoder counts per revolution will be adequate in many cases. With a low following error rate, the drive will stop motion very soon in your case since it detects a mismatch between steps and encoder counts very early.