Попробуйте позиционирование с использованием поля фрейма:
AppFrame.Margin = new Thickness(Mouse.X, Mouse.Y, 0, 0);
В качестве альтернативы, некоторые кадры можно перемещать с помощью своих переменных Left и Top.
frame.Left = Mouse.X; // or whatever
frame.Top = Mouse.Y; // or whatever
Чтобы переместить его пропорционально мыши, запишите исходное положение мыши и рамки при первом перетаскивании мыши и ссылки на них при позиционировании:
frame.Left = originalFrameX + (Mouse.X - originalMouseX);
frame.Top = originalFrameY + (Mouse.Y - originalMouseY);