Question: Did you fully sync Bitcoin Core
first... and then load the old wallet.dat?

If you loaded the old wallet file
after your node had finished syncing, then Bitcoin Core will not have been able to update the wallet transaction history/balance correctly... as you're running a pruned node.
Yes, that is what I did. And I think you've just unlocked the mystery of why the ~12BTC "available balance" was showing at all. We shall see what that same wallet shows once my rescan finishes (in ~5-7 days' time). I suspect it'll be zero.
You may not even need to wait that long... if you have the wallet loaded
now (while it is syncing)... it will find the transaction history as it goes along processing blocks. So, once you get past the 2015 blocks (when you think you stopped using the wallet), it should show the "correct" balance.
Obviously, that may not be the case if the wallet was used after that time.. but hopefully, you'll be able to see the transaction history/balance updating as it syncs... which should give you some idea of what happened to the coins.
In any case, once it has finished syncing fully, you can be fairly certain that the balance showing is "true and correct".