Hi Todd Fagin,
The explanation is quite straightforward, I think.
Your cities layer (i.e. the example that works) comes from this sample server USA (MapServer) and has no visibility range set. Both Min Scale and Max Scale are set to 0 ("minScale": 0, "maxScale": 0), thus allowing you to set these values in your JavaScript application.
The TIGERweb/Transportation data comes from this server TIGERweb/Transportation (MapServer) and as you can see each and every layer has it's own visibility range set. The different road types (Primary, Secondary and Local Roads) are even offered multiple times, for different visibility ranges. And in this case your options to manipulate (or set) the visibility are much more limited. (Of course you can limit the visibility within it's visibility range, but you cannot extend it outside this range.) So, even though your JavaScript code says the layer should be visible, the TIGERweb server will not return anything to show...
I would suggest to add the TIGERweb/Transportation data as a TileLayer instead, like this:
var transportation = new TileLayer({
url: "https://tigerweb.geo.census.gov/arcgis/rest/services/TIGERweb/Transportation/MapServer"
});
In this way all layers will be added to the map and and automatically adhere to the visibility range settings on the server.
Hope this helps to solve your issue.
Cheers,
Egge-Jan