Hmm, well, I'm not sure how that can be, unless you are doing something wrong (hate to say that), but let's go through an example and see if you might be doing something wrong, or I coded the logic incorrectly, or there's something else going on.
See the attached image. This is a picture of the current tables of a tournament that has gotten down to 16 people. 2 tables of 10 seats each remain. Tables 1 and 2 had 8 and 9 players, respectively, but someone at table 1 busted out, leaving them 7 and 9 (unbalanced). Buttons are at 1-1 and 2-5 (I'll use this notation to indicate a table and seat, so 2-5 means table 2 seat 5). If I continually tell the TD to suggest movement, and cancel the movement each time, I notice that there are only 3 suggestions it ever makes:
Move Ned from 2-2 to 1-10
Move Greg from 2-9 to 1-6
Move Adam from 2-6 to 1-2
Ned was 7 positions to the left of the dealer (at 2-2). When he is moved to 1-10, he will again be 7 positions to the left of the dealer (remember to count players, not seats, as empty seats don't count). Greg was 4 positions to the left of the dealer (at 2-9); when moved to 1-6, he'll again be 4 positions to the left of the dealer. Adam is 1 position to the left of the dealer.
I realize this doesn't encompass all situations, but it shows that the table balancing is doing the right thing. More accurately, the software is balancing tables according to the way I programmed it to, but I could have started with flawed logic. But it seems right to me. If I was about to be in the BB on the next hand, and I had to be moved, why wouldn't I be moved into the BB position at the new table? Or maybe it's better said this way: if I get moved into the BB position, it's fairest if I would have been in the BB position on the table at which I was previously seated if I hadn't moved. Which is what is happening here.
By the way, my comment before about making sure that you set the DB for the next hand really is insignificant. It only matters that the buttons on each table are all set consistently (as in, all set for the current hand, or all set for the next hand).... I believe.