Sounds good though it could get really unbalanced... a bravo spawns on the alpha flag, 1 metre away from the bravo flag.
My idea is that you could do the same sort of thing, creating random flag spawns by creating multiple spawns of both alpha and bravo flags, this way you'd be able to have a little more control over the general areas in which the flags spawn.
Of course, this also has its issues with maps needing to be made in this way rather than simply creating a server with a truckload of dm maps. Though, if you look at it in another way, there would be no need to do any coding, you'd simply make a ctf map with multiple flag spawns and add a prefix so it can be identified as a random ctf map.