Actually gray coding only improves BER of detection and demodulation. its your choice not to use gray coding but on the expense of bad performance. You need to design more intelligent receivers and detectors for such systems without gray coding at the demodulator
The purpose of Gray codes in communications is that constellation points that are close together differ in as few bits as possible. This way, if you decode the "wrong" (e.g. neighbouring) constellation point, only few bits will be wrong. Note that these bits have no real meaning, they are just arbitrarily assigned to identify a constellation point.
In ADCs the bits have a meaning: all bits work together to represent one value. If a wrong value is measured, e.g. due to noise, the representation of this value (the bits) may be wildly different, but you are only interested in the meaning of the value. For example, the representation of 0111b is very different from 1000b, but 7 is very close to 8, so that's okay for an ADC.
Another advantage of Gray representation, in mapping of signal points (Constellation), is to make use of differential coding applied prior to signal modulation. As a result non-coherent modulations can perform better. This is useful in both low level uncoded modulation and multilevel coded modulation (e.g. TCM).
I think the answer to your question is, none. Gray coding in the RF modulated signal is never required, and in most real-world cases, it may not even have a credible advantage.
The theoretical advantage of gray coding in RF modulation is that it permits small changes in the baseband signal to create small changes to the modulated symbols, which in principle minimizes RF channel bandwidth when baseband information isn't changing rapidly. And also, small RF demod errors would result in small errors of the baseband information.
But in reality, the baseband information is typically coded anyway, using perhaps both a block code (like Reed-Solomon) and a convolutional trellis code, AND data packets are interleaved as well. Not to mention, the data stream is also frequently scrambled, to avoid long sequences with no variation and to create a nice, flat frequency spectrum. So there's hardly a relationship between what is a small change at baseband, and how that translates to change in the RF coded symbols.
Beyond that, error detection and correction algorithms won't accept "small" errors any more than large errors. For example, if the demod introduces a small error, the error detection algorithm(s) downsteam will still reject that value.
So in these general cases, does gray coding in the ADCs and DACs help, at the outer edges? I think it helps only at the ADC and the DAC themselves. It would minimize the significance of errors within THOSE devices, not so much throughout the comm link.
Most books and papers on digital design discuss Gray codes. However, most of the focus is on generating these codes rather than detailing their uses.
For example, Error correction in digital communications. I search this topic to see the relevant information but fail. After a weak, I found some interesting information you can read too.
Gray code converter is handy in detecting errors during the transfer of information via communication systems. Gray code plays an important role in advanced digital communication systems. In digital communication systems such as Phase Shift keying (PSK), the transmitted bits are encoded in 3 digit binary bits or more. A signal represented by a digital modulation scheme such as PSK is known as a signal constellation diagram. The signal constellation diagram of 3 digit binary bits of PSK is arranged so that the two immediate neighboring constellation points differ by only one bit. So it is straightforward for a receiver to detect errors during signal transmission when one constellation point enters into its adjacent constellation point. The following figure shows the gray encoded 3 bit PSK.