The sentence «ich lasse mich die Haare schneiden» is ungrammatical. It can be either «ich lasse mich schneiden» ‘I let myself be cut’ or «ich lasse die Haare schneiden» ‘I let the hair be cut’, but not both at the same time.
The sentence «ich lasse mir meine Haare schneiden», while not ungrammatical, is unusual. The usual form would be «ich lasse mir die Haare schneiden».
This is indeed a special and interesting case. When speaking about inalienable possession (especially parts of your own body), the possession is not expressed by «mein*» + , but rather by «mir» + definite article + .
For instance, if you are a wig maker, you might say «ich habe meine Haare schneiden lassen». The hair you are talking about is in your possession, but it is not the one that (inalienably) grows on your head. When you are talking about the (inalienable) hair on your head, you would rather say «ich habe mir die Haare schneiden lassen». The sentence «ich habe mir meine Haare schneiden lassen» is rather like the former case. The use of «meine Haare» instead of «die Haare» signals that the hair you are talking about is probably not the (inalienable) one on your head, whereas the «mir» just expresses that you are especially affected by this process – similar to saying «ich habe mir einen Film angeschaut».
See also Alienabilität in the German Wikipedia.