I usually check out any existing alternatives. Then I ensure the alternatives deliver all I want to achieve. The I check the number of downloads, ratings, comments if any. The I check for forums to see what other developers have experienced. Then I form my own gut feeling and take a decision.
I learnt this the hard way when I attempted to write my own CSV parser. Pretty straight forward right? Cell values are separated by commas (after all its a
CSV file) and rows will be separated by new lines. What can possibly go wrong with this logic?
http://secretgeek.net/csv_trouble.asp (not mine, but a representative of the pitfalls)