There are a number of things going on here.
First off in regards to the image "not filling the heightfield area", what you're seeing is the bounding box for the initial base heightfield generate node, *not* the one for the new one you've just created to load your image. If you disable or delete the original heightfield generate node you'll see that larger bounding box go away.
In regards to the size of the imported image, the heightfield load node tries to take the scale from the source file that is loaded. In the case of .ter files this is measured in meters and could be anything. For imported images I'm guessing it just does 1 pixel = 1 meter since there is no "point spacing" specified.
It's certainly true that there is currently no easy way of scaling the heightfield in TG2 from within the heightfield loader and that is probably a good thing to add, however given the node-based nature of the workflow it makes sense to do this in another node as well and that's exactly the approach to take. If you select your heightfield shader node in the node list then click on the Add Operator button below, you can add a Heightfield Resize node which allows you to set the size in meters. Note that this will scale the heightfield in all 3 dimensions, including vertical, so it may end up getting "taller" than you want. If so simply add a Heightfield Adjust Vertical and set the height as you please.
Essentially what you're seeing here is the result of basic image formats having no inherent "scale". Most images don't need to have one - it's not even relevant to most images (what is the "meter spacing" of a picture of your dog?) - but TG2 needs to either know or assume a scale in order to load the image. In this case it takes the most simple view of the loaded data and essentially interprets it 1:1, but tools are provided for rescaling. A more sophisticated Heightfield Load node might be justified, but it's always a struggle between complex, "do it all" nodes and simpler "building blocks"...
- Oshyan