Yes, data moving via USB Audio is transmitted through the USB cable as an analogue signal with no error correction. USB Audio is not the same as data moving to and from a hard drive, where error correction is part of the standard and the devices can resend bits that don't come through correctly. USB Audio is time-sensitive, so no error correction is used. The USB receiver in the DAC has to correctly identify each bit and reconstitute a digital signal that goes to the DAC.
So a bad USB cable will often cause errors with high-res files while handling lower resolution files ok. The USB receiver chip in the DAC needs to identify a lot more Start of Frame markers for every second of playback in a high-res file compared to a low-res file, so a USB cable with a bit of noise in the high frequencies can cause the DAC to hiccup and fail even though it can still manage low-res playback.
You could certainly try a new cable, but there is always the possibility that the USB output on the SalkStreamer or the USB receiver chip in the DAC is starting to fail.
Have you updated the SalkStreamer to be compatible with the current Roon version? I recall a thread on the Salk forum about doing that since the latest Roon version required something to be updated in the SalkStreamer.