Doing a "rescan" is going to be a painful experience for you... Bitcoin Core can't rescan on block data you don't have... you've pruned your wallet, so only the last 2 Gigs worth of blocks (ie. 2020-2021 data) will be available.
So a "rescan", for you, is going to trigger a full redownload of the blockchain!

Yes, I'm in the midst of that painful process at the moment. But I've decided to turn off prune mode so that I can more easily check the other old wallets against the blockchain, rather than reindexing every time. (I should have done this in the first place, rather than pruning, but hey, live and learn.)
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 why the ~12BTC amount was showing. We shall see what that same wallet shows once my rescan finishes (in ~5-7 days' time). I suspect it'll be zero.
If that's the case, then I guess the learning from this experience - for anyone who somehow finds this thread in the future - is to
not do what I did, lest you get your hopes up that you've discovered non-existent BTC