This paper deals with a novel adaptive observer-based technique for estimating the amplitude, frequency and phase of a single sinusoidal signal from a measurement affected by structured and unstructured disturbances. The structured disturbances are modelled as a time-polynomial so as to represent bias and drift phenomena typically present in applications, whereas the unstructured disturbances are modelled as bounded noise signals. The proposed estimation technique exploits a specific adaptive observer scheme equipped with a switching criterion allowing to properly address in a stable way poor excitation scenarios. The estimator's stability properties are analyzed by Input-to-State Stability arguments. The practical characteristics of the proposed estimation approach are evaluated and compared with other existing tools by extensive simulation trials. Real experimental results are provided as well.