One common problem for WMTS layers not displaying is: incompatible spatial references between the Map and the layer.
Check the TileMatrixSets property of your WmtsLayerInfo -- each tile matrix set has a SpatialReference. You want to use a tile matrix set with the same spatial reference as your Map. Normally WmtsLayer will automatically choose the first compatible set (if the server has any) but you can also use the WmtsLayer constructor that takes a WmtsTileMatrixSet.
If the service does not have any WmtsTileMatrixSet compatible with the Map, you may have to use a different SpatialReference for your Map, re-publish the WMTS service with a different tile set, or use a different service type that supports reprojection (e.g. WMS or ArcGIS MapService).