This is an extremely frustrating issue.
I've spent a good few days working around the lazy SceneView implementation of printing ("printing"; it's a glorified screenshot).
After getting a 3D SceneView to send all layers, scene, and data to the print service and successfully return a pdf (like it should in the first place), I get "Override 1, Override 2" in my legend. I do some research, and find multiple threads saying this bug has existed for years, with these customers getting bug tickets lost and shuffled about, not getting any answer whatsoever.
To add, I'm using SceneView as a work around to get dynamically visible labels. So I am going on 3 workarounds deep for labels, printing, and legends.
I'm adding to this thread to indicate it is a serious issue. We pay a small fortune for Enterprise Server and a ton of other arcgis products. As a developer, I now have to explain why I can't get a legend labelled in a map if they don't want it named "Override 1", which to any reasonable person, seems like it should be such a trivial issue.
It doesn't matter if I'm passing ThisLayer[], ThatLayer[], TheCollection[], etc. A legend is a basic, fundamental mapping concept. It should just work. Look at this -> The Oldest Known Map of the World - Geography Realm It is a map with a legend and labels. It is technically more comprehensive than what my map print service gives me. It is from 500BC. it is currently 2019AD.