Oh come on. No shit $2.99 covers the cost. It's digital. The incremental cost to the developer to ship another unit for a piece of software is tiny, tiny, tiny. Most of the $2.99 goes to profit, R&D and fixed costs.
Now, he still needs to pay those developers who made the software, buy computers, rent office space, etc. I'm sure he's done the math and knows he can achieve that by selling X at $6 or 2X at $3. Of course, he could go open source, set the price at 0 and make it up on volume [/stupid slashdot joke]. In Econ 101 he would have read about the price curve that suggests that fewer people will buy at $6 but maybe not so much fewer that it isn't the better price for his business. For a businessman, the ideal scenerio is to charge everyone the most their willing to pay - price stratification. This is why you have coupons at the grocery store. People with little money and lots of time can clip coupons and pay less. People who have more money will not and will pay a higher price.
The play here is not that he's trying to sell the 2X number with some paying $3 and some paying $6. He wants to first make sure he is able to break even by selling something like .5 X @ $6 and X @ $3. The $6 price helps him break even the same way the $3 price does. Plus, after Econ 101, you learn the price curve is somewhat BS in the first place. Part of what he's doing is stating "We think the product is worth $6, but are offering a 50% discount to poor people and assholes (distinct groups)." Now, regardless of why I look at the $3 price, I am much less likely to think, "Is $3 too much for this expansion?" because it's already a half off discount and be more likely to purchase. He may actually sell more units at $3 than he would have without the $6 option.
These guys are just remarkably (for better or worse) upfront about the price stratification. He's also a freak'n brilliant marketer. Free publicity on Slashdot is a win.
All software pricing is arbitrary. Always. It's up to a vendor to ask for what they think the product is worth, offer discounts / sales / etc to those who think it's worth less, and for the consumer to either purchase or not. The vendor needs to deliver a product that delivers a fair enough value that consumers will purchase their products again / not leave angry messages on forums or app stores.