If Khaled wanted them in the docs, don't you think he would have done it the first 10 times these were mentioned?

Are you sure he would do that for every case? How can you rule out the possibility that they are left out because he forgot about them, neglected them or simply didn't have enough time to polish up the documentation? There are other reasons I can think of too, but this is not the point here.

And even if it is as you say, so what? What if all this undocumented stuff is not working perfect? What if they are gone in the next ver? I don't know about you, but I'm not using mirc to control my nuclear reactor. If something breaks in the next ver, I fix it. Scripters that release their work can simply write a patch/update.

To answer your first question (although the answer should've been obvious to you), I use some undocumented features because they suit my needs and make my life easier. I believe lots of other scripters do that too. For example, should I forget about $nickmode because it's undocumented and instead write a script that parses 005 and stores that info somewhere? If you want your script to "always work" (there's no such thing anyway) don't use these features. But the fact that other people are willing to take that "risk" should not be surprising to you.