Turns out <th> is the header version of <td>, not <tr>.  HTML is hard.  Fixed now.