OK, it's clearer now :-)
Customizing an object icon is done with the extension point "vise.inventory.representationspecs". See how it is used in the chassisRack-ui sample, where the icon of an empty rack is different than the regular racks. The plugin.xml for that sample shows that you can either use a list of conditionalProperties, or a more advanced PropertyConstraint. In your case you could define a boolean property "poweredOn" and have your data adapter return true or false for the target VM.