I think I got it.
In UICamera.ProcessRelease(bool isMouse, float drag) you send OnDragOut ("If there was a drag event in progress, make sure OnDragOut gets sent").
I really don't understand why, but the question is the same - if I receive OnDragOut before OnDragDropRelease() my logic thinks that the object has left the area and will not process OnDragDropRelease() properly. Any solution?