You have to understand that coding in C++ isn't easy. I spent about two hours making a basic command-promt-ish calculator that can add, subtract, divide, and multiply. Think about how long the natural disaster thing would take.
Oh yeah. The first bit of programming I ever did was in a game script editor based on C++ syntax. I was in 8th grade and apparently too stupid to ask the internet, so I tried to figure it out stubbornly one syntax error at a time, often times blindly guessing.
Also I doubt that they're starting from scratch and I'm sure they're better programmers than we are. And if it only takes you two hours to program or even mod something that's pretty good.
First, you need a function that would trigger an event to go off randomly. Then, you need a function to choose which natural disasters to putt on a randomly chosen planet. Then you have to make sure that the function applied it correctly (debugging). You'd have to make sure that a 'volcanic eruption' won't occur on a ice planet, or a blizzard in a volcanic planet, etc etc.
Well once you add a basic trigger, its not hard to make a Boolean trigger condition that gets input for a random number generator somewhere down the line. Its whether they'll ever add the triggers that unlikely part, despite the Galaxy Forge having an interface for them.
The big problem is that with the 'random' function. I dunno much about libraries, but you might need to install a new C++ library for random timers. (I remember I made a program that had a timer-I think I used the libraries cstlib and time and stlib... something like that.)
Considering Sins already uses timers for pirate raids and random numbers for all kinds of things, I'm sure they already have the basic libraries for that. Really that's pretty mandatory for any game to have under the hood.