One or the main themes of Good Omens is how Crowley and Aziraphale constantly bicker about their own natures and their lack of free will when compared to humans.
Yet throughout the story they often prove they can go against their own supposedly defined natures. Aziraphale isn't nearly as holy as he would like and Crowley isn't so evil as he pretends. All their minor deeds of alignment mean nothing before the fact that they both tried to stop the end of the world and the Antichrist. They both enjoyed and loved the world and went against their assumed roles in pursuit of this objective.
The ineffability of God however, remained ineffable. But heaven and hell both want the same outcome and war.
So of course a demon can do a ' good' thing, at least in a work of fiction where demons exist and with both itself and the bible I measure all fiction equally in its fictionability, except good omens is a better read. Without getting into the bigger discussion behind this one on the relative nature of good and bad.