Why just think something when you can read the documentation and know?
The function scatter return one object that represents all of the points:
s = scatter(___) returns the scatter series object.
"*CData* — Marker colors (default) | RGB triplet | matrix of RGB triplets | vector"
"Marker colors, specified as one of these values:"
- "RGB triplet — Use the same color for all the markers in the plot. An RGB triplet is a three-element row vector whose elements specify the intensities of the red, green, and blue components of the color. The intensities must be in the range [0,1], for example, [0.5 0.6 0.7]."
- "Three-column matrix of RGB triplets — Use a different color for each marker in the plot. Each row of the matrix defines one color. The number of rows must equal the number of markers."
So you tried the first version, and you actually need to try the second, something like this:
- get the complete matrix of all RGB triplets
- change the one row that you need to change
- set the CData with the altered matrix