It’s not about encryption itself; it’s about using the encrypted seed phrase as a decoy.
If that's the only objective then the solution already exists and there is no reason to re-invent the wheel. It is called the extra word or the passphrase. It is any phrase that you can add to your existing seed phrase to derive an entirely different set of keys. The seed is still the same and is the decoy itself. The only way to access the funds is to know that passphrase.
That passphrase can be the same password you used to encrypt in your algorithm (birthday, passport number, etc...).
Many might argue that a BIP39 passphrase eliminates any need for encryption and/or steganography techniques of an original BIP39 mnemonic, you may be right, there is no right or wrong, simply each person adopts a cryptographic solution that meets their threat model.
The BIP39 passphrase cannot be a replacement for encryption and even though it adds an extra layer of protection but it is not meant for encryption. It is suitable to get that "decoy" which is why I suggested it based on what OP said about the objective.
But OP's method (if I understood the code correctly) is actually encrypting the mnemonic since under the hood it is using AES to encrypt the entropy. Although looking at the code again, I'd drop PBKDF2 and use scrypt instead (like BIP38 does) since scrypt is strong by design and there is no need to use such high iterations as 60 million.
Also I should point out the checksum for Electrum mnemonics (unlike BIP39) is not in the last word to keep it when you want the result to remain valid, it is the entire seed that is hashed to get that checksum. This is why the Electrum's actual entropy size is 132 bits not 128 for 12 words.
So OP's idea won't work for Electrum mnemonics unless a brute force tactic is added but even that will have a flaw. If interested, I can explain more.