Thanks for all your input, very much appreciated.
I think the only thing that was a little unusual is that I used Blue Wallet (with the xpub) to get the "receive" address. I didn't generate it or validate it on Ledger. I didn't think that was a problem, guess I was wrong. In Blue Wallet, in the watch only wallet, there's a Receive button that I clicked, no options or anything, it comes up with receive address in the format of a QR code and also a string.
I just checked all locations (Ledger Light, Electrum, Sparrow, and Blue Wallet). The xpubs all match.
To get the xpub from Ledger Light, I followed this process:
https://support.ledger.com/hc/en-us/articles/360011069619-Extended-public-key-xPub?docs=trueElectrum and Blue Wallet have the same next Receive address
Sparrow looks different, they start with bc1. It may be because of the current derivation path (m/84'/0'/0') which I've messed with a bit, don't really understand the derivation path but I do understand it's important.
The next address on the Ledger ALSO starts with bc1, and is identical to the one in Sparrow. Neither Sparrow or Ledger find the transaction. Hmm...
I went into Electrum and tried creating a new device, connecting to hardware device, etc. But it says "no hardware device detected" even when the ledger is plugged in.
I will try the xPub scanner tool if I have to, it looks like it's above my head, though.