Why not 'pendant' instead of depuis?
Doesn't "depuis" mean after instead of for? Does the English sentence "He has cut off contact with her for a long time." mean "... after a long time" or "... since a long time" as it seems to me now? I'm not a native English speaker.