Opening headers with a configuration provider randomly uses an invalid header config instead of the valid source config

It seems based on timing. I repro it on Windows randomly, but not on Mac.

This also requires that the header file be referenced in the CMakeList.txt.