Since it has a Witness data and version 1 then is a Segwit transaction.
There is no witness in the raw tx posted by OP.
Thank you for the correction. After the version, I assumed that it was 0001, marker 00 and flag 01.
Which is usually found in Segwit.
022043d8de7fdfa0d9ec0918bfa96a0f786080324034297811d46c81b257c791a556014104161 c71cbde74f28cfffa05e3a543282f8500a289a67c75a81edff29f3c64cfda7e3ccdbf63b1206b16 653bfd91029ce0b3552e64d4e36d4d6b7d6935d47a4d86ffffffff010005e805160100001976a91 4c8a3535793d51f143d6451f4bf6cb2e74a6c589888ac
I took the above as the Witness data since it was after my supposed output and before Locktime
00000000
P2PKH from 2010 worth 12000 BTC and the uncompressed public key used in the signature script doesn't give the same hash as the one used in the P2PKH output meaning it is an invalid tx!
So the fee error OP faced was as a result of the fact that
maxtxfee=1000000000000 which is 10000BTC is lower than 12000BTC-2.94BTC(output)=11997.06(fee)