When comparing results of decimal or float calculations in different environments, you should not expect exactly the same results, as different math libraries are used, and rules may be different.
I don't use ADF, but it is quite clear that ADF is not only using decimal calculation here. We have a two-decimal number multiplied with three-decimal number. This can yield at most five decimals, so ADF is smoking something. I would guess that MyField is handled as a 64-bit float. And indeed, if you try:
SELECT CAST( cast(1708868.4400000000 as FLOAT) * CAST((1.0 - ISNULL(0.0250000000, 0)) AS DECIMAL(38, 28)) AS DECIMAL(38, 28)) AS MyCalculationOutput;
You get something which more closely resembles what ADF produces.