Hmmm, looks like the main difference is the need for the first 5 rows to form a "header" in the CSV file. Is that correct?
You may need to generate 5 "dummy" records that reproduce the data needed and that function as the header.
I suspect that there is also a way to set up an XML export with a custom xslt "grammar" that would also produce the header rows for you.
You might also, if you have not already done so, contact tech support for JupiterGrades.
You never know but that they may have an alternative method that would make for simpler updates and even if they don't, user feedback that there are issues with their format that can be resolved to make this simpler might motivate them to make a change for the better in a future release of their product.
I have already contacted them. They charge a fee for "custom integration" between JupiterGrades and other programs, but maybe hearing my concern with possibly others voicing the same things may prompt for a future release.
I accidentally marked my response to your answer as best, but I wanted to mark PhilModJunk's as the best answer. How do I switch that?