I spent a long time trying to figure out why my HandleDisplayColourUpdated()
was triggering a Debug.Log but not changing the colour of my sphere. From googling (and then reading the comments in this thread, though without clear titles) I found the answer is to use
displayColourRenderer.material.SetColor("_BaseColor", newColour)
I hope that save someone else some time!