All throughout calculus texts, the authors have always put conditions on the manipulation of differentials. They say that for the chain rule, the cancellation of the differentials is simply a way to remember the formula. When doing separation of variable for ODEs, texts always say something like: "Oh, so we group the ##dy##'s and ##dx##'s on both sides, even though that is kind of a handwavy way of handling the differentials and it's not how they actually work" or something like that. There is always some little side note that the manipulation isn't rigorous. In all my experiences, treating the differentials as variables and manipulating them as such works out fine. How are you actually supposed to treat infinitesimals then?