Hi!
As far as I know, Subversion stores binary files using a diff algorithm. I think the problem is the PushOk client. It should store a full copy of a specific revision and compare it (external lvdiff) with the local but only a diff version is stored. The funny thing, if I do the same with a text file it gets a full copy even if a diff version would also work for text based diff tools (I guess).