Binding and unbinding *has* to happen outside of 'normal' depsgraph evaluation of modifiers now that we have CoW, otherwise persistent data stored in modifier data are always lost! Note that this is only first step of the fix, modifiers code needs also some work. Surfacedeform one is in next commit, Laplacian case is much, much more complicated to handle, given how it uses its cached data. :(