The algorithm defined in the document you linked is for generating terrain on the GPU. The data isn't stored in an array that can be easily modified and re-rendered.
Without access to raw data you can manipulate, you're not going to be able to modify the terrain at run time. It's certainly possible to modify the code that generates the terrain, thus changing the terrain. However, it's far more difficult to see the relation between what's being generated on screen and lines of code, than it is to see a tool like a 3D paint brush modifying the terrain directly.
You could heavily modify this code to accept additional parameters that would allow you to create areas of modified density. However, if you're going to be storing data on the CPU side you may as well store everything there, and send the raw data to the GPU to be rendered.
Either way, modifying this existing code to allow for dynamic generation will be a fairly significant undertaking, and you might be better off pursuing alternative methods for procedural generation that don't rely so heavily on the GPU.