(using <td rowspan=#> for the cheeses, with the type marked up by <b>.
Why? Don't we have
<dd>Lancashire, Cheshire, Caerphilly</dd>
or something similar? What's the b going to do?
Oh wait, one or the other? Since there's still a good content relationship between cheese type and cheese examples, even a <h?> to <p> or <h?> to <ul> setup would still give more (correct) content structure.
Or, we don't know why it's bold, but whether it was or not, there's still a relationship there that we can mark up in other ways.
Totally agree on the table... can't think of a way to not use a table while still having the two top headers head each list of header/list pairs.