Time to repeat the old explanation again...
***************
What you're seeing is the difference between 'calibration' of the monitor, and the monitor profile. There are 2 parts to 'profiling' a monitor.
1 - The monitor is calibrated. This sets up things like the approximate white point and gamma of the screen, and is done by a combination of adjusting the monitor by hand and loading a LookUp Table (LUT) to the graphics card. This gets the monitor into a reasonable and, more importantly, known state for profiling.
2 - The monitor is profiled. This involves measuring the actual response of the calibrated monitor (RGB chromaticities, measured white point etc.). This info is stored in the ICC profile ('.icc' or '.icm' file), and is used by Photoshop, DPP (and some other apps, but not all) to correct the RGB values sent to the monitor.
When Windows starts your software will load the appropriate calibration LUT to the graphics card that works with the ICC profile selected. This will change the appearance of the screen in all applications - it's the reason you can see the screen appearance change while Windows is starting.
For accurate colour, however, an application still needs to use the profile to adjust the colours correctly. With things like DPP, that means you must select the monitor profile in order to be colour managed. Some applications (e.g. Photoshop, Elements) will automatically use the profile without being told to. Most applications (e.g. Firefox) will ignore the profile completely, and will therefore not display colour accurately.
(Just to confuse the issue, the ICC profile specification allows people to store additional information in the '.icm/icc' file. While it is not strictly part of the profile itself, most vendors use this facility to store the LUT data in the '.icm/icc' file. This is sensible, since it means you can't lose the calibration data - the profile is only valid after the LUT is applied).