I believe there are several components to look at when deciding the time to reach your goal. Many have already been mentioned, but, I think it is a combination of your following, the amount of marketing prior to launch, the amount you are trying to raise and the main thing(IMO) the quality and likability of the project.
I have done a 21 day project (non-card related) and was successful. If I had to do it again I would probably have chosen to increase to 30 days.
Reason being: If you are passionate about meeting your goal(usually it is reflected in what you have done to date to launch it) you will take the extra effort to reach higher once some momentum is gained. By the time you get momentum, you wish you had the extra time to push harder. With that said, playing cards from a designers viewpoint are very time consuming and intensive just to launch a meaningful project. Therefore, the extra time is useful to figure out the holes/gaps in your marketing and rallying everyone up to make it successful.
We are getting ready for our kickstarter to launch this weekend and have set it for 36 days. I still have hesitation about whether it should be 36 or just do 30.
I don't think there is a definitive answer to how long you should run a campaign, however that all I gotta say bout that {forest gump voice}