I design mine in Word, Publisher or Photoshop Elements, depending on how elaborate it's going to be, then print it on fabric designed for the printer. I have found that there are differences in the quality of that fabric though and they affect the way the label looks initially as well as the way it holds up when washed. If you go this route, get a good brand.
My mother, who is still quilting at 88, carefully hand embroiders her labels. They're lovely.