You need to stretch the heightmap file to approximation the real life size.
Not the unreal landscape.
Also. Sea level is (65535/2)+1 - but you can extract the gray value by making a new landscape and exporting/sampling the heightmap.
To calculate zero scale there’s an exact ratio to follow which is now found in the landscape docs with examples detailing the process (took some doing to get them to change those).
Wen going from 20m dtm to 1:1, you will loose some steepness no matter what program you use.
You also want to run a radial blur on the map after upsampling, so that the transitions don’t produce terraces of 20m. Since you just stretched from 1 pixel per meter to the same pixel every 20 meters…