I specifically made this texture with these properties:
As horrible as this texture is, it will serve very well to show how bad things can get.
So what's wrong? It looks fine to me!
Ok, but now let's change our GUI scale of Minecraft, aaaaand...
..it looks terrible!
TL;DR: Math.
It's pretty simple, actually. Let's assume that there are only 3 GUI sizes - Small, Normal and Large. Each one has different scale and actual slot size - 16x16, 32x32 and 48x48.
So what happens when you try to scale your texture inside that slot?
No problems with 16x textures:
16 / 16 = 1 32 / 16 = 2 48 / 16 = 3
So as you can see, each "minecraft pixel" will be either 1, 2 or 3 real, screen pixels wide/high. But!
16 / 32 = 0.5 32 / 32 = 1 48 / 32 = 1.5
Now you see that each mc pixel will be either 0.5, 1 or 1.5 pixels wide/high. As you can imagine, it's difficult to display half pixels, so it tries it's best to scale it to match the size.
Most people don't even notice this, because they always play on single GUI scale and don't test their textures on other scales.
Not bad, actually. Reason for that is that it's no longer in GUI - it's size is much much larger on your screen, plus is constantly rotates.
Consistency and artistic guidelines aside, it's fine to use higher resolution textures on blocks, because similar to what it looks like on ground, in inventories they are already bent and rotated and aren't facing the screen directly.