Big Bug in the Dist Between Shades Method Fixed

The dist-between-shades method somehow managed to be pretty deeply
flawed without me ever noticing it until now.  The component was not
using the specified input value for the distance between shades but was
approximating it.  It now uses the correct method and starts at the top
of the surface or the left side of the surface and divides it up by the
input distance.