For implicit coupling the writeCheckpoint is called by the function:
Precice_WriteIterationCheckPoint
This function takes the values of the last timestep as checkpoint values. However, for implicit coupled simulations where the calculix is subcycling, the last calculix timestep is not the same as the last coupling timestep. Therefore, the wrong checkpoint is written.