Short answer: Yes, it's a loose rule of thumb with many exceptions. Personally, I wouldn't even bother with memorizing that rule; it seems more trouble than it's worth.
Verbs in the -te iru form have three possible basic meanings. I'll paste this from another answer:
- Progressive (="continuative", "durative"): 学校を通っている → I am passing the school right now (but haven’t passed it yet);
- Resultative (the action is over, and we're talking about the resulting state): 学校を通っている → I have passed the school (already);
- Repetitive/habitual: 学校を通っている → I usually pass through the school; I’m passing the school these days.
For the purposes of this question, let's set aside the habitual and concentrate on the other two. How can you tell whether a -te iru verb has a progressive meaning, or a resultative one?
In the general case, you can't. You'll have to depend on context for that. It's not rare for the context to be insufficient, and then, well, that's how it is. Just keep the possibilities in mind and expose yourself to natural Japanese materials; in time, one gets used to the normal patterns of usage, unconsciously, without having to painstakingly memorize every single case.
Still, let's look closely into how it works (though, again, I don't recommend making flashcards out of this or anything). A few verbs have semantic restrictions, preferring one meaning or the other. For example, non-Japanese speakers intuitively think 来ている must be "he's coming; she's on her way here". However, it turns out that the action of 来る in Japanese refers exclusively to the point in time where they arrive, so that 来ている always means "she has come; they're already here" ⁽ᵇᵘᵗ ˢᵉᵉ ᵇᵉˡᵒʷ⁾. Verbs like this are called punctual verbs; they're conceived as instantaneous, and never have the progressive meaning. Verbs that can have a duration are called durative.
降る is durative, so 降っている theoretically could have both meanings (Martin, pp. 454–455, fn. 56). However, in practice I don't think I've ever seen it used for "it has rained (so be careful, the floor's still wet)". I always see it used in the sense of "it's raining (so take an umbrella with you)". Judging from a few minutes browsing on Twitter and from the comments to your question, I think that's how natives use it these days. Perhaps 雪が降っている could have better luck in being used as a resultative, since people are more likely to want to talk about "the state of having snowed"; but I found it hard to find unambiguous examples. Perhaps @Margarita Spasskaya is right in that, in these contexts, they'd prefer 降っていた as less ambiguous (though note that's not a true resultative; it doesn't say "out there is now in the state of having rained", it says literally "earlier today it was raining"). Long story short, if you see 降っている, assume it's progressive. A few other durative verbs are like that, used mostly for the progressive sense only; for example, 泣いている is, I think, normally used for "is crying" and not "has cried".
Now, it's true that durative verbs are often transitive, and punctual verbs are often intransitive. There's also a relationship between punctuality and intentionality; punctual verbs are usually intransitive and involuntary (it's hard to "try doing", -te miru, them), while durative verbs are usually transitive and voluntary. These associations and tendencies are interesting for semanticists and lexicographers, but they're not very useful for the learner, because there are too many important exceptions in all directions.
Here are a few verbs that are intransitive and punctual (that is, they follow the Genki rule): 来る、行く、入る、出る、上がる、下がる、死ぬ、届く、離れる、出発する、到着する、決まる、見つかる、止まる、治る、（雨が）止む、残る、尽きる、住む、座る、結婚する…
But the following are intransitive and durative (like 降る): 働く、滑る、泣く、及ぶ、（花が）散る、揺れる、燃える…
Did that make sense so far? I hope it did, because now it gets worse: when we look more deeply into usage patterns, we find that even verbs traditionally described as punctual do actually see durative uses. For example, 死んでいる is punctual, that is, it always means "is already dead" and never "is dying"; except if the subject is collective, like populations or forests, in which case "are dying" becomes a possibility. 先生が来ている normally means "the teacher is already here"; but 先生が来ているところ means "(just at) the point when a teacher is coming".
If things are so complex, why did Genki propose that rule at all? I think it's meant as an aid to deal with counter-intuitive movement verbs like 来る, where the primary and most frequent meaning is the one that a student wouldn't expect. However, the rule will inevitably backfire later. I'd rather recommend keeping the following in mind:
- The -te iru form can have one of three meanings: a) that the action is ongoing, b) that the action is finished but the results are ongoing, or c) that the action is recurring or habitual.
- Some verbs prefer one meaning or the other, but the details are hard to pin down; keep an open mind and think of which one makes sense in-context.
- In particular, a few frequent intransitive verbs of movement are different from English in that they're usually about a completed action: 来る、行く、入る、出る、上がる、下がる…
Source: Martin's A Reference Grammar of Japanese, pp. 454–455 fn. 56; pp. 257–. Thanks to everyone who posted in the question so far.