Interesting bit about the DuckDB sample, if I read in a file like the one you're using, I get all default field names, and the "headers" are being included in the first row. That's due to it failing auto detection of headers with that missing column. If I choose an option to force headers, I get those field names, except that ID column is just defaulted to a "Field1" name because it lacks a value otherwise. Perhaps that's an option? Expect a working table and just fill in column names?
Yeah, I could do that.