Even if they were rebuilt, it would just be a nuisance. And once one city had been destroyed and rebuilt you'd have seen it all. What's the point of it happening randomly and infinitely?
There are two options: 
1)  Each building has several counterparts, and when one is destroyed it cycles through the next like 1 2 3 4 5 1 2 3 4 5.  
2) They go really technically advanced and have each building made of several connecting parts.  Some extreme script randomly selects x number of parts to build a randomly generated building with.  In short, you NEVER have seen it all.  There is always a new combination of buildings individually and as a whole in a single city.  
The point is to create a new battle every time.  It wouldnt be a nuisance because it could be scripted to only be attacked every x number of months.  In game months take a long time, and it would happen frequently enough to enjoy it, but rarely enough to make it cool.
You seem to really hate the idea of a technically advanced game.