Intenté crear un objeto QgsRubberBand con agujeros, pero fallé:
rb = QgsRubberBand(iface.mapCanvas(),True)
geom = QgsGeometry.fromWkt("POLYGON((0 0,4 0,4 3,0 3,0 0),(1 1,3 1,3 2,1 2,1 1))")
rb.setToGeometry(geom,None)
Parece que QgsRubberBand no reconoce los agujeros en absoluto. ¿Es un error o estoy haciendo algo mal?