According to Microsoft's Developer Network "Font Technology" page:
Each application and each operating system can define its own fallback
font for any Unicode script range. Microsoft makes an effort ensure
consistency across its application and products and includes an API
(since Windows 8) to provide preferred font fallback recommendations
to applications.
And also...
The Noto family of fonts uses the [Font Linking] model to create what appears as a
single font by combing script-specific font files... Font linking requires specifying the priority of the fonts in linked together as though in a change. A font later in the chain can only add glyphs to an earlier font; you cannot override or replace glyphs in the early font.
As well as...
Font substitution is implemented by an application to replace a
request for a font that is not available into one that is available.
In general, applications use PANOSE information (a set of numeric
values summarizing the font’s style) to find the most appropriate
matching font.
Finally, for plenitude, PostScript Font Type 0:
A composite font is composed of a high-level font that references
multiple descendent fonts.
I would go into more detail, but that should give you the jist of why your getting a glyph in the display of your text and not in the display of the font itself. The following links drill down a little further:
How to change / configure font fallback?
Supporting multilanguage text layout and complex scripts with Windows 2000
charmap
and most Windows programs actually, where I see square (well, rectangle to be precise) like in Wordpad or font substitution is performed like in LibreOffice.