If you AB tested giving someone a screen where they put in their credit card number, or a screen where they just took a picture of it, you might find that people are more willing to take a picture. People are probably more comfortable with a photo of their credit card being taken on their own phone than someone else's phone. To the app, both of these are CNP transactions.
To be fair, any company that gets my credit card number (restaurants, Walmart, Amazon, every random e-shop on the internet) could be doing anything with my credit card, so this concern isn't exactly new or very scary.
Consumers have an irrational understanding that swiping a credit card is safe. Taking a picture of it is likely the sketchiest action a merchant could take, in the eyes of the average uneducated consumer.
We should be moving away from credit cards. They are becoming an archaic technology.
Also, how would a phone lead to more fraud? You could authorize each transaction by cryptographically signing it after entering a passphrase. With a credit card anyone that steals your numbers can charge to it.
The fraud prevention mechanism for magnetic cards is mostly reactive and doesn't require "passphrases" or "cryptographically signing," which is a big usability win.
Since issuers are on the hook for unauthorized charges, and generally make money from transaction fees, it's in their best interest to find a good compromise between fraud protection and usability. Adding consumer software and a wide variety of commoditized portable computing devices into the mix doesn't seem worth the cost.
But the, why doesn't having a photo of the card in-question also qualify for a CP?
I think Square moved toward being able to swipe because it's more 'traditional'. People were going to be upset about vendors taking a pic of their card.
There are two good reasons Square doesn't do this that I can think of off the top of my head.
First, CNP vs CP card processing rates. http://en.wikipedia.org/wiki/Card_not_present_transaction
Every credit card has the CC number encoded in to the back of the card, but in addition to that, it has a couple bytes of extra information. That extra information qualifies the merchant for a lower processing rate if they SWIPE the card. That means, when you take a picture, you are paying closer to 3.5% instead of 2.75% for every transaction. (rates quoted are square's cp vs cnp rates)
Some merchants are extremely sensitive to this, other aren't. The larger a merchant is, the more likely they are going to care. On the other hand, no merchant wants to lose a sale, 3.5% of a sale is still better than 100% of a lost sale.
The other reason is based on UX. It feels really weird to have someone take a picture of your credit card using their cell phone. The apps that use this technology might be doing anything with that image.
Otoh, more people should take credit cards!
(edit: Sidenote, Square considered doing this before the swiper was invented, during the very first month or so. Doesn't mean it is a bad idea, just that Square moved away from it in favor of a swiper.)