Got in touch with Mathworks "bugs" and this is only correct when you include the 'IgnoreAnalyticConstraints', false flag. Without this, the step response is wrong for 1st order, 2nd order .... Apparently "By default , the solver applies some simplifications while solving differential equations which may lead to unexpected results in rare cases". Not sure how rare a step response is though.
syms y(t) Dy = diff(y); D2y = diff(y,2);
% 1st order step Y1 = dsolve(Dy+y==heaviside(t), y(-1)==0); Y2 = dsolve(Dy+y==heaviside(t), y(-1)==0, 'IgnoreAnalyticConstraints', false); figure(1); ezplot(Y2-Y1);
% 2nd order step Y1 = dsolve(D2y+Dy+y==heaviside(t), y(-1)==0, Dy(-1)==0); Y2 = dsolve(D2y+Dy+y==heaviside(t), y(-1)==0, Dy(-1)==0, 'IgnoreAnalyticConstraints', false); figure(2); ezplot(Y2-Y1);