The changes you see on startup are due to the video card correction table. If you make use of display profiles with such a table, it is assumed the video card is applying them on a system wide level. Some profiles will include these tables, others won't. If the response of the display is recorded exactly in the profile, such correction tables aren't required. But if the recorded response differs from the display(for example, if a perfect gamma is recorded in the profile), such a correction table is needed. Windows does not support loading them on its own, so some 3rd party LUT loader is needed(Adobe Gamma is one such program).
If your display profiling software has the option to meet a target gamma and white point(rather than using the native response of your display), a video card lookup table will be generated. This kind of blurs the line between calibration(generating a lookup table for correction) and profiling(simply recording the device's response, so a full color managed application can translate colors for it). While this isn't full color management, it can get you accurate grayscale tracking and spot on whitepoint. You have to know what you're doing though; you need to make sure your profiling application is calibrating for a specific gamma and whitepoint with the video card correction tables, you need to be sure it's being loaded at startup, and then you should measure some video test patterns to make sure your video player, video drivers, and video card haven't altered the response themselves(there may be interactions due to gamma correction, the the different level ranges used by video and PC displays, etc).
For example, my Macbook Pro here came with a factory ICC profile(I have no idea how accurate it is, but it does make up for some weird non-linearities in the blue channel). MacOS always loads the correction tables if they are present in the current display's profile(you can see this effect by selecting different monitor profiles; the effect takes place immediately). If I load some generic profile without a table, the display just looks wrong, and I can identify a shifting color cast in a gray ramp. If I boot into Windows, I get the same effect, since it doesn't load the tables automatically. I simply copied the ICC profile from MacOS, and load it with
xcalib, a free LUT loader for X and Windows. This gives me a gray ramp without color shifts, and makes the display look MUCH better, even though I don't have full color calibration.
There's a shareware program called
SuperCal for MacOS that will let you determine your display's response visually. It does the standard solid gray vs line pattern gamma test, but at many selectable points for each channel, rather than the standard method that assumes your display has a smooth gamma curve(almost never the case for non-CRT devices), and that all 3 channels have the same response. It doesn't give anything near real color management, but it does give you decent grayscale tracking(albeit with an unknown white point). I've used it to take an external monitor I use sometimes from horribly unusable(it was a great monitor, but it just looks wrong compared to my laptop display) to acceptable as a second monitor. I've moved the profiles over to Windows too

.
So running a LUT loader can give you a corrected grayscale and/or whitepoint, depending on how your profile was constructed. This may be all you need(especially with CRT-based devices). On the other hand, it WILL NOT give you full color correction. The primary color issues that were discussed at the beginning of this thread would not be improved.