I have to agree with you.
Collins Dictionary defines "subsection":
a section of a section; subdivision
It is certainly grammatically correct to use either word, and I think it is semantically correct both ways as well. However, as you say, writing "Subsection 2.3" it introducing redundancy, as it is (as you say) blatantly obvious that section 2.3 is a subsection of section 2.
I would say, however, that "Section 2.3" does not imply a subsection, it seems rather explicit that it is a subsection, to me.
A quick search on Google for "Section 2.3" and "Subsection 2.3": Section has 1.2 million hits. Subsection has 46,000 hits. So it definitely makes much more sense to drop the "sub-".
If we have the document:
This is a bunch of information about parrots.1.2. Hawks
This is a bunch of information about hawks.
Both "Parrots" and "Hawks" are sections in their own right. They are simply sections within sections.
This is similar to the folder metaphor in computing. A folder contains many subfolders, but each subfolder is still a complete, and real, folder in its own right.
Princeton University's WordNet defines subsection:
(n) subsection, subdivision (a section of a section; a part of a part; i.e., a part of something already divided)
Furthermore, Merriam-Webster defines section:
a distinct part or portion of something written (as a chapter, law, or newspaper)
So if one takes a section, then takes another logical portion of that, that is another section–also a subsection–that happens to be inside the original section.
E.g. a chapter is a section of a book. A paragraph is a section of a chapter. A sentence is a section of a paragraph. We can logically divide anything into however we like.
Cambridge Advanced Learner's Dictionary defines subsection:
one of the smaller parts into which the main parts of a document or organization are divided
Further details can be found in section 7 subsection 4 of the report.
From the example, we can see that they have referred to section 7.4 as section 7, subsection 4.
My understanding of all this, is that we can call top-level sections, just "section". But we can call non-top-level sections either "section" OR "subsection".