Nope sorry mate but levels are static. You may be able to write some code that generates spawning of enemys in a random fasion but as for moving brushes and stuff it's going to be the same every time.
The reason for this is once you compile your map the map structure is set in stone. It cannot be changed. Changing maps is what the editor is for. If you wanted to change the map each time you play then you would have to recompile after each change.
One other idea is you could have a bunch of func_doors that make the walls to your maze and then create some kind of series of triggers that open some doors and close others.
Just a thought.
Sorry again. Nice idea though