After stepping into some breakpoints, I realized that the childForm will be TopMost as long as I set that property after the childForm has been initialized properly and shown. I was able to force this to work by setting the TopMost command within the Shown event like this:
private void ChildForm_Shown(object sender, System.EventArgs e)
{
this.TopMost = true;
}