Ordinate dimensioning works fine. The trick is to not make your baseline dim a created dim from an edge of the part that may change. If that edge gets changed in any way (like if you decide later to chamfer the plate) it could cause all the dimensions to become invalid.
The safest way to start is to SHOW a dim from a feature you know isn't going anywhere, like a leader pin hole. Show that dim, convert it to an ordinate dim and use that as your base for creating all the rest of the dims.