As far as I understand, double sideband AM with carrier and FM can be demodulated via SDR (Software Defined Radio) without frequency or phase correction. For AM, received signal is $$r(t) = A(t)\cos(\omega_c t) \tag{1}\label{received_am} $$
where $A(t) = 1 + m(t)$ and $-1<m(t)<1$. In ideal case we can just multiply \eqref{received_am} with $\cos(\omega_ct)$ and apply LPF to obtain $A(t)$. However, lets assume that both phase and frequency has error in local oscillator. Then, we will get the signal below when we apply first step of demodulation process
$$ A(t)\cos(\omega_ct)\cos((\omega_c+\omega_e)t + \phi_e) \\ = \tfrac{1}{2}A(t)\Big(\cos(\omega_et-\phi_e) + \cos\big((2\omega_c+\omega_e)t + \phi_e \big) \Big)$$
where $w_e$ and $\phi_e$ denotes small frequency and phase error respectively. After applying LPF we will get
$$\tfrac{1}{2}A(t)\cos(\omega_et-\phi_e)$$
but not $A(t)$ as in ideal case. Also, I can listen music via SDR without any distortion even if I tune frequency upper than original FM broadcast frequency. My question is simply, why don't we need frequency and phase correction in AM and FM?