The biggest stumbling block when it comes to adoption of open source is that there's not enough people trained to support such applications. Moving everyone from Windows to Linux sounds great in theory, but who's going to train the teachers & other staff in how to set it up the way they'd like. Yeah, you can find enough techs to do the server/desktop support, but who's going to find a good trainer that won't be tied up behind the scenes?
Going to open source is quite a bit similar to what the teachers had to deal with when they had to do all the stuff for no child left behind. Great idea, not enough resources to back it.