Until Intel explains how the Tjuction works, perhaps then you might have a better understanding why the cores are reporting different temp, since those are based Tjmax temp.
Its better to use the programs that read cores for load temps rather idle.
I've noticed that my E4400 on load will be the same or off by 1 degree.
On my Q6600 2 of my cores are 2C cooler then the other 2 when under load.
Again those are based on a Tjmax. And since I've switched MB, my DFI is acting different the my P6N in reporting core temps. The difference is the same on the cores (2C cooler), but the Tcase temps are different. One difference though, is my old P6N didn't have Thermal Management Control option.