If you had a very close camera that touched the head, you could map a person's head pore-by-pore. By looking at nearest neighbor surrounding pores, the camera should be able to determine exactly where it is on the person's skull. The cutting device should be a small vacuum attached to the camera that can suck up a few strands at a time and trim those precisely.
By combining the perfect pore mapping to the precise strand cutting, you could write an app to customize the exact haircut you wanted, and the cutter should be robust enough to handle it, even with unintentional movement.
EDIT>> A modification: the vacuum cutter can also serve as a strand-measuring device. So you could go to an actual hair cutting salon, get your hair cut perfectly, then visit the device, which will go over your pore-mapped head and measure all of the strands to remember your "perfect" haircut.