I think to achieve this you'll need to modify some parameters of your NoiseMap (it can be configured.. right?). If I recall correctly, basic perlin noise has two parameters, amplitude, which describes how high hills and troughs are, and frequency, which indicates how close those hills and troughs are to each other. Of course, it's a fractal design, so it's not so easy to visualize. Here you can see the terrain looks very rugged, which I suspect is because your NoiseMap is using too many octaves (the more octaves you use, the higher the frequency, which causes a lot of tiny ripples everywhere - lower it and you get a less detailed, but smoother look). Try experimenting with those settings, see what happens when you change such and such..
Procedural generation is really about tweaking until it looks cool, from my experience. Look for configurable settings in your noise classes, and check them out
So I cut the frequency down to 0.0625 and the persistence to 0.01 and the amount of octaves to 3 and 4. With those new values I still have little bumps everywhere. It is very odd. So maybe the problem is with the island mask? IDK, I am not sure. What I would like to ultimately do is have some scattered forests and then the rest could just be flat grass land. Forests would be in the higher range instead of mountains. This game is going to be top down tile based so I am looking more to just generate tiles that clump together on an island
So I am guessing that I might just have to write my own noise function of some sorts to get the desired flat effect. Am I right? Or do you think it is easily possible with libnoise?