I'll guess he has gone with the "standard" m/44'/0'/0' derivation path specified in BIP44 and used by hardware wallets etc... most likely used if it was done by a "library". The problem is that Electrum uses a derivation path of m/0
Both paths will generate "valid" public keys/addresses... but they'll be different.
THANK YOU!
Your tip ultimately directed me to this link: https://bitcoin.stackexchange.com/questions/36955/what-bip32-derivation-path-does-electrum-use
Using the same logic from the approved answer on StackExchange, we updated our code and, voila, the addresses generated match the ones in Electrum
You made my day, HCP (and bob123)