That's the crux of it. I looked at the patch notes once for a private server a while back, and it was constant, non-stop work to fix tons of bugs. Blizzard would have to pay market rates for a team to do what those servers do for next to nothing, and that's just the maintenance on top of the immense cost of dragging out the original code, getting it up to coding standards, weaving in security and hardware fixes, and all of the testing hours to ensure it is as accurate as possible to what things were then.
Then after that, can you imagine the outcry when people realize it's just this one patch and not their favorite patch? Why not just create a server for every single patch? We'll have a half dozen for classic, a few for TBC, and so on. No, Blizzard is better off just staying away from such a quagmire.