Відповіді:
Нарешті, за допомогою цього коду зміна кольору шару працює для мене:
QgsMapLayerRegistry.instance().addMapLayer(self.vlayer)
symbols = self.vrlayer.rendererV2().symbols()
symbol = symbols[0]
symbol.setColor(QtGui.QColor.fromRgb(50,50,250))
qgis.utils.iface.mapCanvas().refresh()
qgis.utils.iface.legendInterface().refreshLayerSymbology(self.vlayer)
Вам потрібно перезавантажити MapCanvas і панель шарів.