I'd venture this guess: because programming is presented everywhere as something easy, with a ton of "hello world" tutorials which don't even begin to scratch the surface. "Everyone can do it" is thrown left and right. Man are they in for a surprise, when they are introduced to tons of poorly written legacy code used by, say, critical medical systems. Think spaghetti code and text-file interfaces with dozens of systems but on a whole new level, likes of which is hard to even imagine.
Damn right, programming is hard, and it is getting harder with every line of code people write.
Note: in this example, I bunched programming with maintaining together. If you only write code for new features without taking into account existing or legacy code, you're a lucky son of a gun.