OpenPGP Public-Key Encrypted Session Key Packet Key ID generation
An OpenPGP "key" is actually a structure that may contain many public keys. Typically, it contains two, a signing key and an encryption key. The signing key is considered the top-level key, as it issues signatures claiming ownership of all the subordinate keys, be they encryption or signing keys.

The key ID of the whole structure as you'd see it in a program is the key ID of the top-level signing key. The keyID if the ESK packet is the key ID of the encryption key. That's why they're different.

Put your whole key into the dump program at http://www.pgpdump.net/ and you'll get the whole thing dumped out for you.