Jimmy Akin has a post with some good comments about the practice of charging for CCD. Jimmy seems to think that the practice amounts to simony, which I think is a bit extreme, considering how many parishes are strapped for cash.
I almost agree with Jimmy, but I have a lot of sympathy for parishes that charge (including my parish where I teach CCD). Catholics give so little to the Church, it's hard to imagine financing it otherwise. Ironically, this comes back to bite us in the butt, because the money they pay for CCD for their kids is not tax deductible, whereas if we would just adequately support our parishes, they wouldn't have to charge and we could keep more of our money out of the hands of Uncle Sam.

We collect just enough to pay for the workbooks that the kids use--and never enough to cover the actual cost of the program.
And we take any kid who can't afford the book for nothing.
But you are right about what Catholics give. It's pretty embarrassing. Using median incomes for our area, if our parishioners were even giving 5% of their income (never mind that 10% tithe) I wouldn't be sweating paying the electric bill.