I should preface this by saying that I am working in the US, at a large public university that serves a population that largely consists of first-in-family college attendees, low income students, and many students who speak a language other than English at home. I have previously taught in low-income public high schools with similar demographic profiles.
Homework gives students an opportunity to practice performing the kinds of computations that they are expected to learn in a course, or to build familiarity with the definitions and theorems that they are expected to understand by the end of a course. I find it incredibly difficult to believe that a student can master material (at any level) without the kind of practice that is provided by homework assignments. Since the goal of homework is to give students an opportunity to practice the skills that they will ultimately be tested on, I am incredibly sympathetic to the argument that homework should not be graded, as the students that actually complete the homework will master the material and do well on exams, while students who don't complete the homework will probably fail those exams.
Unfortunately, students (especially undergraduates, and even more especially high school students) are highly motivated by "points" and often don't value anything that isn't worth any "points" in a class. For example, one quarter I had two precalc classes, one right after the other. In one section, I took attendance every day and factored that into a "participation" grade. In the other section, I took attendance, but did not factor that into the grade at all. The classes were otherwise as identical as they could be. In the class where I gave credit for attendance, I had an average of about 90% daily attendance, while the other class averaged out to about 60%.
As such, I think that it is necessary to give students some kind of grade for completing their homework. Moreover, I think that such a grade should be directly tied to the homework (rather than to quizzes based on homework problems; I think that students often fail to see the connection). That being said, I think that the key work here is completion. I typically don't knock myself out grading every problem, and will often grade homework in a completely binary manner (1 point for turning in a substantially completed assignment, 0 points for not turning in anything or turning in something that is incomplete). Alternatively, if homework can be done online (my institution uses either WebWork or WebAssign for most lower division classes), I tend to take the score given by the computer, and "round up" to the next letter grade.
The goal is to give students an incentive, in the form of "points", to complete their homework. I am trying to exploit my students' innumeracy (they'll work quite hard on their homework for a tiny fraction of their overall grade) and the Skinner box-like reinforcement that comes from giving students "points" in order to get them to do something that is good for them (i.e. finish the homework). At the end of the day, the homework grade shouldn't have that much effect on their overall grade (exams or projects will be much more important).
In short, yes I grade homework, but (1) I focus on completion over accuracy and (2) I don't make the homework grade a huge component of the overall course grade. In answer to the secondary question ("Should I give homework quizzes?"), I think that is a fine strategy, but I would employ it in addition to assigning some kind of homework grade (with, perhaps, more weight given to the quizzes) and I would be careful not to spend too much lecture time on quizzes.