In reply to Andy W.

Thanks for writing. The simulation is straightforward. For a school with n students, simulate n numbers in the range 1-365. If there are 185 school days, ask whether all the numbers in the range 1-185 were generated. If so, add 1 to a count. Repeat B times (eg, B=1E5) and return the proportion of samples for which all numbers in the range 1-185 were generated.

Since the student birthdays only need to "cover" 185 school days instead of 365 days, the probability of covering all 185 school days is higher than the probabilities reported in this article.
For example, a school of size n=2050 has a 50% chance of having birthdays on every school day. A school of 2450 has an 80% chance.

The precision of a Monte Carlo simulations is proportional to 1/sqrt(B), so B=100,000 gives 2 to 3 digits of precision.