It's unethical and immoral only if Apple isn't currently attempting to make the system better, and we have no evidence of that. I agree that it's stupid of them, I agree they're not supporting developers like they should, I agree that lots of people are getting hurt, but not every awful system is intentionally awful. It's been only a year since the program opened: I'm going to give Apple the benefit of the doubt for the time being and assume they're hauling ass to fix things.
99% of iPhone developers don't see these problems, and don't have their hard work rejected. Wanting the system changed is certainly a fine thing, but calling iPhone developers stupid is a stupid and meaningless insult that belies your one good point.