Krumlauf,
The test for the top surface is a dial indicator over the whole face. Three points are for the datum face only. If surface[ ]A is concave, then there are three points sticking down to contact the reference surface, and you have constrained three degrees of freedom. If surface[ ]A is convex, it constrains one degree of freedom, only.
A crude practical assumption is that the datum feature is flat, or at least very much more accurate than the tolerances being called up from it. If your datum face is not reliably flat, you need to make it flat, or work out datum[ ]targets.
The rule of thumb with tooling is that it must be ten times as accurate as the thing being fixtured or measured. If you want parallelism of .003 with respect to datum feature[ ]A, face[ ]A must be flat to .0003.
--
JHG