When transfering an item into a minecart chest/hopper, the places the dropper checks are offset in -X and -Z direction. In the attached image (facing north) 3 existing minecarts receive items, but if you put a minecart with chest/hopper on any empty rail, it won't get any items.
By looking at Minecraft's source code using Forge, I have determined the issue: Droppers, when looking for an inventory at a position, use the block's -x, -y, -z corner to search, while hoppers use the block's center. Because droppers directly use
TileEntityHopper
'sgetInventoryAtPosition
method, this causes the dropper's searching location to be offset in the -x and -z direction. The fix is simple, and only requires one line to be changed: