There are a couple things that you are doing different from what I do. They are:
1) I measure the cylinders in Auto with PTMEAS turned off.
2) I start from the 'Top' cylinder and work my way to the 'Bottom' cylinder but I define a negative length. I have tried constructing BOTH directions and get same result. Problem still exists. It may construct properly several times in a row; however, it does construct incorrectly when you least expect it. I should not have to create the Cylinder AND a line so that I can get a DATUM (line) and a Cylinder Feature (IMHO), but that seems to be the only way to go at present when I use Multiple Bores as a Datum.