Hi, thanks for sharing this.
Although I'll admit that it isn't ideal, this is actually by design. Code that executes inside TestCaseSource is executed at Analysis time, which is when we discover tests. As such, there is no test in the codebase to associate this coverage with.
TestCaseSource is probably the most misunderstood feature in NUnit. When you use this attribute, you are actually extending the logic of the test framework itself and writing user code that will run during test discovery. Clearly, it's a very powerful feature, but it's worth considering that the code running inside TestCaseSource does not have the same liberty as normal test code. It is not executed inside the suite's normal hierarchical structure, does not have the same granularity of error reporting, and we don't have a mechanism for tracking its coverage.
Please take care with this attribute. If you introduce code here that is unreliable or performs badly, you can end up with a very bad experience.