The reason this helps confirmation is that double spends are rare. In our use they consist of conflicting unconfirmed txs, race condition duplicates, valid duplicates (2 from bip30), and actually strong branch invalid block tx duplications (the ones we need to check for). So by recording these rare duplicates we can reduce the double spend query cost to almost zero for block-inclusions.
Compact blocks will absorb existing txs, so they won't benefit from this exclusion (two valid blocks can spend the same tx record). However this is only a performance issue during sync. A single block full double spend query is very fast. And it will continue to work for catch-up sync (i.e. after compacts have come in) as well.