There are numerous extremely annoying bugs that have been around forever, and this is one of them. It may be possible to mitigate it by using "take" and "give" on stockpiles, doing "accept from links only", and turning off bins, which probably means using quantum stockpiles.
In case Toady is reading this, some other godawful problems that have existed for a long time are:
The manager will assign a job to a workshop even if the allowed workers in that workshop don't have that labor enabled. Fixing this problem would be the single largest (presumably easy) improvement that can be made to the game as it currently exists.
Hospital zones still take all the thread and cloth in your fortress.
And these are less bad, or are possible to work around:
It is impossible to create a stockpile for undecorated items.
Elite military often lose this status when being told to stand down after being stationed.
Gypsum bags are indistinguishable from other bags, and so tend to clog up small heavily used stockpiles.
Wells and magma forges won't ever work if you build them before there is liquid underneath.
Captured siege mounts are half animal, half enemy, and the game can't decide which.
Burrows do not appear to work predictable when a dwarf is assigned to more than one, certainly not when all civilians are confined to a burrow.
And then there is the more recent problem involving building a constructed wall near a ramp, which results in a "creature occupying site" interruption, because the mason stands in the place where he's constructing a wall.