Подходит / семантично ли использовать тег для заголовков столбцов.
Да
т.е. должны ли Price и Qty быть в тегах для таблицы, как эта?
Это заголовки строк, но все же, да.
<table>
<tbody>
<tr>
<td>
<td scope="col">apples <!-- both heading and data so use td with scope -->
<!-- etc etc -->
<th scope="row">Price