I'm running the latest version of CommonLook and it handles assigning ID tags very well. You can select multiple cells and Assign them to a header. You can also select the same cells and assign them to another header using "Append". This will add the new header, without deleting the previously assigned header. In earlier versions Append did not work for me. This is what you need if you have long complex tables. If you get the current version and this is not the case call Tech Support, as the plug-in is not working properly. The Touch Up Reading Order Tool does not do this.
I occasionally create white/hidden text for heading text that spans multiple columns and then create individual <TH> to hold them, but I wouldn't rely on this for long tables or use it as my main method. It's a quick enough fix in isolated cases--or if your author likes to leave Row 1, Column 1 blank you can create your own invisible header for the screen reader. But it is too hard to check and not the best road to follow. Also hidden text is considered a no-no by some as it is assumed to be a drop out/drop behind, or error in layout.