Unfortunately there’s a lot of possibilities for what you’re describing, but you can eliminate some of them, and get a good workaround, by opening up the folder with the image you wish to use as your display picture, selecting the image and dragging it into your own display picture box in either the contact list or your display picture in any conversation window.
You’ll know you’ve got it right when you see the + icon on the mouse, like this:
Then release the mouse and it should change your display picture to the image you dragged in. If that crashes Messenger, there’s a problem with where your display pictures are being stored, but if it works, then there’s some other issue, such as a broken registry tweak that changed your default images folder for example.