Yeah, the main problem is not with calling fill multiple times within a component, it’s where you have adjacent components that meet on a non-pixel boundary, so that the line where they join isn’t quite right. Makes it hard to have opaque components with the same background colour next to each other.
I agree on the practicality of just making it fill a slightly larger area in this one case, it’d certainly fix the problem despite not being very elegant. Ideally I guess the clip bounds would be floating point, but I don’t know how hard that would be to implement.