The "Split" function has code that is setting the Line discount on the split lines to be the same as the original line.
It looks like the only way that can change is if you also have "Contract Disc" and/or "Warranty Disc" on the original line. If not, then you may have some custom (or ISV) code that is interfering and you'll need to have a developer debug the process.
Here is the base code in the "Split" function where the new "ServiceLine" is given the TempDiscount which is calculated based on the Original line's "Line Discount" less "Contract Disc" less "Warranty Disc".
