### Describe the issue

Testing in bitcoin 0.13.0, calling `bitcoin-cli listsinceblock x` is outputting all double-spent transactions that are in the wallet, even those that were double-spent well and truly before x.
### Is the issue reproducible?

Yes
#### List steps to reproduce below:
1.   Create a double-spend send to your wallet (easiest using bip125)
2.   Wait until one confirms, and then wait a few more blocks
3.   Run `bitcoin-cli listsinceblock $(bitcoin-cli getbestblockhash)` and it will output the double spent transaction
### Expected behavior

The double-spent transaction that was conflicted before the block hash should be filtered

{
    std::shared_ptr<CWallet> const wallet = GetWalletForJSONRPCRequest(request);
    CWallet* const pwallet = wallet.get();
    if (!EnsureWalletIsAvailable(pwallet, request.fHelp)) {
        return NullUniValue;
    }
            std::string flags = "";
            for (auto& it : WALLET_FLAG_MAP)
                if (it.second & MUTABLE_WALLET_FLAGS)
                    flags += (flags == "" ? "" : ", ") + it.first;
            RPCHelpMan{"setwalletflag",
                "\nChange the state of the given wallet flag for a wallet.\n",
                {
                    {"flag", RPCArg::Type::STR, RPCArg::Optional::NO, "The name of the flag to change. Current available flags: " + flags},
                    {"value", RPCArg::Type::BOOL,  "true", "The new state."},
                },
                RPCResult{
            "{\n"
            "    \"flag_name\": string   (string) The name of the flag that was modified\n"
            "    \"flag_state\": bool    (bool) The new state of the flag\n"
            "    \"warnings\": string    (string) Any warnings associated with the change\n"
            "}\n"
                },
                RPCExamples{