I have done it a few times. I'm not that good at it, so maybe I'm wrong, but I have never been able to control WHAT I dream about, but rather been able to realize that I am indeed dreaming, and controlling what I do in that particular dream. As for the content of the dream itself, I'm not entirely sure it's possible to control that. I've purposely flown and otherwise controlled my actions while dreaming, so I know for a fact that it is possible.
The way I did it: during the day, every time I would open a door, I would ask myself, "Am I dreaming?" before opening the door. When I stepped through the door, I would say to myself, "Nope, not yet." Then right before I went to bed, I would ask myself one more time, "Am I dreaming?" then of course, "Nope, not yet." When I fell asleep and walked through a door in my dream, I would ask myself, "Am I dreaming?" Finally, the answer would be, "Why yes, I am indeed dreaming," and an enjoyable experience would ensue.
The first, maybe, three times I tried it, I would wake up almost immediately after having realized that I was dreaming. But after a while, I got better at staying asleep and consciously controlling my dream-self. I've never been able to make it through a full night without having woken up due to a lucid dream. I think that has something to do with having sleep cycles, and dream differentiation between r.e.m. and non-r.e.m. sleep (yes, you actually do dream during non-r.e.m. sleep), HOWEVER, I have been able to go back to sleep after having woken up due to the lucid dream, then continue wherever I had left off in that dream. Hope this helps