Tomfin,
It is near impossible for a single hole in sheet metal to create a stable, repeatable axis for measurement all by itself. Typically the depth of the cylinder is too shallow. Therefore if you did declare it as a primary datum feature to check the location of the other coaxial hole inspectors gage-makers, etc. would "choose" something else on the part that makes sense to them to serve as a primary (stopping rotational degrees of freedom) and then they treat the hole as a secondary datum feature establishing a X0,Y0 reference at its axis (stopping translational degrees of freedom). The point is that if the GD&T renders an unstable or unrepeatable measurement system most will substitute it for one that makes sense to them and is stable.
To determine what should serve as primary, secondary, and tertiary datum features for the part you should always examine its function. What physically and functionally on the part removes rotational and translational degrees of freedom? Say for instance that the two coaxial holes have a long bolt that goes through them in the assembly and the axis through the two holes actually determines where the sheet metal surfaces end up in the assembly. If that was the case the functional primary datum for the part would be the axis of the two coaxial holes (removing 4 degrees of freedom), say the secondary was the width between the thrust surfaces adjacent to each of the coaxial holes (which stops translation along the axis) and the tertiary what ever functionally stops rotation about the axis.
If that system represented function and was stable and repeatable there would be no reason for an inspector or gage-maker to consider an alternate method to check the part.
Now to answer your question, if the sheet metal surfaces align and locate the part in the next assembly and the hole locations are dependent upon where the surfaces put them then give the holes location tolerances from that sheet metal surface coordinate system and size the holes so that given thier location tolerance for not being coaxial, whatever has to pass through them will function.
If the the holes themselves are the functional primary datum and you want to tolerance their coaxial orientation toward one another Call one |A| one |B| and tolerance the location of "A"@ MMC to |A(M)-B(M)| likewise for "B". Then tolerance the adjacent thrust surfaces for squareness to the primary datum axis.
The point is whatever the parts' function reveals how the part is oriented and located in the next assembly USE IT! (if possible) to define the tolerance zones for functional variation of the parts contour.
Paul