High scoring is the key word telling you a score-based spam filtering software is used. It does not necessarily tell you that any of the reasons used to calculate the score is to be found in your body, it just means that there are multiple reasons (or less likely a single one the recipient does not want to tell you).
How could multiple reasons together lead to a message being rejected?
If your top level domain, your mail provider, and certain keywords in your mail all have never been associated with non-spam messages, the recipient might add a score of 2 points for each, and then decide a score of 6 is "high" enough for instant rejection. That is how widespread spam filtering usually works: adding up (possibly-automatically) fine-tuned values for certain indicators of spam to a compound score, and then deciding which score is enough to justify unattended action.
Whether that score is calculated to have positive values mean less likely unwanted messages or the other way around is merely an implementation detail. AFAIK, the way the test service your mentioned calculates it, assigning a high score to least number of indicators of unauthorized or junk mail is less common.
How could the rejection come after the DATA command, if none of the mail content was even used?
That can just be the way the admin setup the system. If the score can include adjustments based on message content, then it may not make sense to judge the headers first, and then the complete mail again after DATA has been received. It is often simpler to scan the mail once, after all data is available, without optimizing for the special case where indicators in the headers could not possibly be made up for by body content.
How could a single reason be enough, but the message deliberately not saying so?
If your mail contains a header like X-Sending-Software: WordPress addon xyz v0.2
and I know that this means the mail was sent either from a server that is not maintained, or likely from a server that was abused to send mail because of a specific, known vulnerable version of a web application, then letting the spammer know how I detected him only serves to tell the spammer how to avoid my crude but effective detection. In that case, I will mimic the message of my scoring system, even though no multi-component score was even used.
(The other answer explains the meaning of the DATA command)