Agree with Darren - Move permissions can be tricky.
Suggest:
- Create a test user (if you can). Do not add them to any groups or context teams.
- Make that test user Manager of both contexts (move from, move to) to ensure that they can Move
- Then, remove them from the Manager of both contexts.
- Create a test Group (Org level) and add the test user to the group.
- Apply ACL's methodically to the Group with the test user.
- Map the test Group to the Members Role of both Contexts.
- Apply Full Control All ACL to the object to be moved in both contexts
- Back off and apply only the 3 Move-related ACL's in the two contexts
- Once working, consider not applying the needed ACL's in each Product/Library at all; instead, apply at Org level, to be used just once and applicable everywhere.