An ICC profile characterizes or describes how a printer lays down colour in response to an instruction to print a certain file value. For example, if the printer lays down a LAB value of 4,-3,-2 for L*, a*, b* respectively when the file value it is trying to replicate is 0, 0, 0 (neutral black), the ICC profile notes this behaviour. [L* is for Luminance and a* b* define colours - if you are not familiar with LAB. Much profiling works in LAB.] The profile contains some tables purposed for printing, soft-proofing and different Rendering Intents. It is descriptive. When you go to print, the colour management system (CMS) in the computer uses that information to send properly adjusted data to the printer, so that the printer is essentially "fooled" into reproducing the intended file values. Because there are billions of colours and a profile is made from anything like 100 to 6000 patches depending on how constructed, there is a lot of interpolation happening, and of course a lot of conversion because the printer ends up printing in CMYK, not LAB and not RGB. So just think of the profile as a dictionary that provides information allowing colour values in the image file to be reproduced correctly when interpolated and converted through the CMS to the printer.
The better the quality of the your ICC profile, the more likely it will help produce the luminance, contrast, colours etc. that you expected by looking at the photo on the display, assuming of course that the display is properly calibrated and profiled as well. For each profile you need to maintain the same printer driver settings (especially Media Type) used for creating the profile, otherwise it will not be accurate.
You can't adjust how the printer prints in its native state, but you can adjust how the display image looks, which in turn induces you to adjust the image in your image editing software. Taking into account that display light is transmitted and the light reflected from a print is - well - reflected, the different character of the illumination alters how you perceive the image, the reflected image normally looking duller and having less contrast than the transmitted one. So before you start, you need to adjust your display, through calibration and profiling, to account for that, otherwise you will be continuously disappointed. The most important calibration settings for your display profile are brightness, gamma (essentially contrast ratio), black point, white point. Especially the correct brightness would vary depending on the surrounding light you are working in. The brighter the environment, the higher the brightness setting can be, and the lower the lower. Working in a reasonably dim room (to avoid distraction), a brightness value somewhere in the range of 90 to 110 should be satisfactory, but you need to test this. If you get the display luminance and contrast right, it will give you correct perception and prediction (under softproofing) of brightness and contrast
Softproofing with paper colour and black ink simulation enabled allows you to see on display quite reliably what will emerge from the printer, provided your display calibration/profiling and printer ICC profiling are good.