I just tried the iMovie image stabilization feature for the first time. It seems to me that it adds some sort of shimmery artifact, but it's not so easy to tell. Most manipulations 'cost' something, what does this this one cost?
What video stabilization usually does is to correct for camera shake by keeping the features in the video stable or moving smoothly. This "transfers" the shake to the video borders, so you should see black bands appear and disappear.
So you lose parts of the frame that are replaced by reciprocal black bands. If you want to remove these artifacts, you can crop but you lose some more of the frame. And you might lose quality if you interpolate to compensate the change in resolution.
clabacchio's answer is generally correct but the major artifact you get other than loosing a part of your frame is that no image stabilization is perfect. Especially iMovie doesn't do the greatest job in tracking the camera movement compared to Premiere, After Effects or Nuke. In order to stabilize a video you need to "find" the movement of the camera and move the video frame in the opposite direction, if the algorithm doesn't do its job very well you will end up with an even weirder camera shaking, especially if you have very high amplitude shakes for a few frames, the software has a hard time to account for those and has to blend movement to make it appear less abrupt, its a quite complicated process as its not possible to remove certain amplitudes of movement without loosing absolutely everything of your frame.
Additionally if you have a lot of tilting going on you will have weird distortions in your video because obviously with a 2D video you can only correctly remove movement on the x and y axis e.g. panning of the camera. These limitations are responsible for most artifacts in terms of picture distortion.