I suggest that the registration fee is a part of the cost of doing business. They have to pay someone to give you the forms, go over them with you to be sure that she/he understands them and that they're correct and then process the registration. This includes keeping track of how many are registered and paid to hold the position so that they can limit the enrollment. This persons answers the phone, mails out forms and program descriptions that they've probably been the one to produce.
They could do away with the registration fee and increase the tuition. Would you feel better about that? But then how would they know for sure who will be attending. Usually parents won't back out when they know that they will lose their registration fee. If they do back out the organization still has the money that paid for the cost of organizing and maintaining the registration process.
Do you have to pay 6 months tuition in advance? If that's the case then they wouldn't need a registration fee. However, I doubt that you are required to pay in advance. I've not run across any programs that did that. If you do pay 6 months in advance at registration then I'd ask for them to waive the registration fee.
Some organizations also do a credit check which costs as much as $35. This is paid out of the registration fee.