No, they did not forget it.
The HID descriptor does include a bCountryCode field, so it is in the specification, but it is not used for keyboard layout indication.
Keyboards may use it to indicate the localization based on country.
It is just not required and indicating non-localized is allowed for all keyboards.
All keyboards send the same codes for buttons in the same location. This is how it worked even before USB keyboards.
This simply allows the same keyboard hardware to just have different keycaps for different localizations and layouts.
This means it is also not required to have any customized HID descriptor programming needed to keyboard chips, so it is just a matter of building the keyboard with the right keycaps.
So on a German keyboard, the Z button sends exactly the same key code as a US keyboard with the Y button.
This also enables just switching the localization to another type, so even if the keycaps do not match, you can still use a foreign keyboard hardware with your PC with your native layout.
I think the motivation to leave the layout off is that there are countries with many languages and layouts. Many people also speak multiple languages. It would be near impossible to bring in new layouts to USB standards when something changes or updates.
And it would be just as annoying to plug in a keyboard with layout X and select layout X by default, even if you want to use layout Y because it is your native layout.