Just like all promotions, they are regional and up to local franchisees.
Having lived in quite a few different regions of the country, I too have seen areas that do and do not have Shamrock Shakes seasonally. I have to guess it is just based on basic business, such as past sales, to warrant the trouble marketing them for such a short time.
Keep in mind that places like McDonald's don't really make individual shakes, they have a large machine that makes a large batch of one to three flavors, usually vanilla, chocolate, and sometimes strawberry. So to offer a seasonal flavor like a Shamrock Shake, they have to sacrifice another flavor that may sell much more reliably.... and even possibly throw out a whole lot of left-over Shamrock. If that has been their experience in past years, they are less likely to bother offering it anymore.
After all, the whole point is to sell shakes
Al