Grades should come first. An overwhelming majority of high school football players will have put on their pads the last time when their senior season is over. You had better have something else planned for life after graduation other than remembering a few games in high school.
On the other hand, if there was no law regarding No Pass No Play, would you still have them not play? If passing is that important (and I am not saying that it isn't), then why wait for week 6? Why not have the head coach check every week. If a player's grades are passing, then they don't play that week's game. If Texas ended NPNP this year, would anyone then have the coach institute a voluntary version of it locally? How well would that go over?
It seems kind of hypocritical to say that grades are the only factor but then only at the 6 week level set by law. Either they are or they aren't and if they are, why wait for the state to mandate a student sit down?