Come inverto un colore?

So che questo non invertirà direttamente un colore, lo “opporrà” semplicemente. Mi stavo chiedendo se qualcuno conoscesse un modo semplice (poche righe di codice) per invertire un colore da un dato colore?

Al momento ho questo (che non è esattamente la definizione di un invertito, perché se lo passo un colore grigio / grigio restituirà qualcosa di estremamente simile ad esempio 127, 127, 127):

const int RGBMAX = 255; Color InvertMeAColour(Color ColourToInvert) { return Color.FromArgb(RGBMAX - ColourToInvert.R, RGBMAX - ColourToInvert.G, RGBMAX - ColourToInvert.B); }