Well, you will need to have a different formula to use it on at least 2 perfect IVs (out of 4). You just can't apply the "at least 2 or more" clause to that one.
Sure you can. You now know the odds of getting at least one. From there, you can easily figure the odds of getting two or three. It's a matter of applying the same formula and correctly combining your answers.
The odds of getting 3 stats that don't have a 31 in them is (31/32)^3, or 29,791/32,768. Therefore, your odds of getting one 31 out of three stats (which is also your odds of getting at least one 31 on a Legendary or Baby Pokémon) is 2,977/32,768, or about 0.091 (again, not reducing because I'm lazy). Notice, the chance is lower, because you have fewer opportunities. Odds of a 31 out of 1 stat is obviously 1/32.
The problem, of course, is that this is finding one 31 out of three stats. To figure the odds of getting a 31 in two, we must factor in the final stat. The easiest way to do this is to use our previously determined answer. But, since we need both to occur, this is now a different calculation than the simple multiplication it would otherwise be.
As I'm typing this out, my coffee is kicking in (never work math in the early morning without caffeine), and I realize that we're taking the long way around (though the math should work if you still want to use it). I'll go ahead and take the simple way out, and work the math differently from the beginning.
Odds of getting a 31 are 1/32. Odds of not getting a 31 are 31/32. Thus, the odds of getting a 31 in exactly one IV out of four is:
4 x (1/32) x (31/32) x (31/32) x (31/32) = 4 x (29,791/1,048,576) or about 0.11.
The 4 multiplier is because this can be any of the four stats possible.
Similarly, our odds of getting two 31s are calculated thusly:
6 x (1/32) x (1/32) x (31/32) x (31/32) = 6 x (961/1,048,576) or about 0.0055.
The 6 multiplier here is, again, the number of ways possible to achieve the desired outcome. We'll use Strength, Special, Speed, and HP as our 4 variables. You can get Strength/Special, Strength/Speed, Strength/HP, Special/Speed, Special/HP, or Speed/HP. Six distinct possibilities.
And for three, it becomes:
4 x (1/32) x (1/32) x (1/32) x (31/32) = 4 x (31/1,048,576) or about 0.00012.
Back to a four multiplier because there are only four possibilities (only one stat will not have a 31).
For Four:
(1/32)^4 = 1/1,048,576 or about 0.00000095.
There is no multiplier because there is only one possible outcome.
Please keep in mind that, to keep the math simple, these are the odds of getting EXACTLY the IV set for each one. So those are your odds of getting 1 perfect IV of 4, NOT your odds of getting AT LEAST 1 perfect IV of 4. If you want to find the odds of "at least" just combine the probabilities of getting the exact stat distribution and all higher ones (for example, combine odds of getting 2 of 4, 3 of 4, and 4 of 4 in order to determine your odds of getting at least 2 of 4).