Mathematica sometimes cannot handle manipulations involving the delta function. If you put in by hand the identity delta(x/S)=Abs(S)delta{x), then everything works out reasonably. (I am writing sigma->S and alpha->a, so this shows up more cleanly in the code.)
In[40]:= Assuming[a > 0, Integrate[DiracDelta[s + a], {s, -a, 1}]]
Out[40]= HeavisideTheta[0]
In[41]:= Assuming[a > 0,
Integrate[Abs[S] DiracDelta[s + a], {s, -a, 1}]]
Out[41]= Abs[S] HeavisideTheta[0]
In[42]:= Assuming[a > 0,
Integrate[Abs[S] DiracDelta[s + a] f[s], {s, -a, 1}]]
Out[42]= Abs[S] f[-a] HeavisideTheta[0]