My view, as a regular user and not as a moderator, is that there's really no way to consistently enforce this. There is no way to prevent a user from, say, emailing the winner of the challenge to offer a prize.
So, the question we should really be asking is: Should we allow users to publicly advertise cash prizes, in a question or a comment?
For that, we can turn to a post on meta.SE by the Almighty Shog:
If I know the answer but am not willing to put the time in to answer your question for free... then I'm probably not gonna do it for $20 either.
But someone will.
Guaranteed, someone, somewhere has time to burn and needs cash. No guarantee they know the answer, mind you... but they'll take a guess at it. And since they really need that $20, they'll likely hang around and down-vote any other answers, while picking fights with anyone who criticizes theirs. Just look at the little fights people get into over rep now, and spice it up with some desperation...
So if you just want answers, and lots of 'em, but don't really care if they actually answer the question... And if you love flame wars... Then yes, this is a great idea.
If you like anything about the way the site works now, then it's a terrible idea.
Granted, our site is a bit different in a few respects. We're not a "normal" Q&A site, so "do you really know the correct answer, or is that just a guess?" doesn't apply here. And, with an objective winning criterion, picking fights with other people's answers isn't really plausible.
However, even though PPCG isn't straight Q&A, the same problem of extrinsic motivation exists. Jon Ericson sums it up very effectively in the excellent linked post (well worth reading over):
If you want to make an omelet, you're going to break a few eggs.
Just don't expect to get chickens.
Adding a real-world, tangible factor would only serve to exacerbate this issue. We'd be flooded with low-quality answers, and even worse, people might begin to prioritize answering questions that involve cash prizes, while ignoring others:
I love answering questions, but I also liked getting my number to go up. Pretty soon, I found that I made a little calculation before starting to answer a question: "Will this make enough of a difference in my number to be worth my time?"
On top of that, the fact that the first meta.SE post I linked was status-declined means that there'd be no way to enforce the OP's money/prize offers, making them sketchy at best.
So. Here's what I propose:
As a site policy, we edit out real-world prize offers on sight (and flag comments so they can be deleted).
This also appears to be the consensus on Meta Stack Overflow, and seems to me like the only real option.
This doesn't need to be applied retroactively, but we can follow this guideline (assuming nobody opposes it) for any similar situation in the future.