It is most likely what you are see is the effect of statistics having being computed on the datasets and then stretch being applied.
When you add a raster dataset to ArcMap, if statistics have been previously computed and included with the dataset, then ArcGIS by default applies a 2 standard deviation stretch renderer to the imagery. This has the effect of increasing the contrast of the imagery and for many 16bit datasets results in the data being visible vs seeing near black. This stretch can be turned off for a specific layer by going to the layer properties and changing the stretch to None. Alternatively if by default you do not want a stretch to be applied when adding imagery,then go to Customize, ArcMap Options, /Raster/, Stretch type and set this to None.
When you add a raster to a mosaic dataset a stretch by default is not applied to each individual raster. As a result it may appear to be darker. Multiple images may be added to a mosaic dataset and in many cases you do not want each image to have a separate stretch applied. When overviews for a service are built the system computes statistics for the complete mosaic dataset. When this mosaic dataset is then added to ArcMap either directly or via an Image service, ArcMap will again apply a default stretch. A typical example of where this of most use is when say adding multiple elevation datasets. IE the data is NonProcessed and by default you want ArcGIS to apply a stretch renderer to the complete mosaic dataset when is is added for display, so that the data can be seen. If you do not ArcMap to add a stretch based on the statistics of a Mosaic Dataset then you can set MosaicDataset Properties, /Defaults/, Is Preprocessed Data to Yes. IE the mosaic dataset includes images that have already been processed and so no additional stretch should be applied. Typically this would be used when creating a mosaic dataset of pre-processed imagery or when the mosaic dataset includes processes to color correct imagery.
If you have a case where you have a set of images and you want each to be stretched individually in the Mosaic Dataset there are two options:
1 - When Adding the Raster Datasets to the mosaic dataset, click on the Raster Type properties button and change the Processing Template to 'Stretch'. The type of stretch can be changed by going to the Functions tab and opening the Stretch\StretchFunction item that details the stretch to be applied to each image when added.
2 - If the data is already added, then use the 'Batch Edit Raster Functions' (Accessible by making a selection set of the rasters and then right click on the Footprints, Selection, Batch Edit Raster Functions). This will enable you to 'Insert' a function into the process chain of each raster. In this case you would probably want to add the 'Stretch' function with Standard Deviation stretch.
Note that when adding a stretch you can also define the bit depth of the output. Keep in consideration what the bit depth of the mosaic dataset is. You may want to specifically define the mosaic dataset as 8bit when you create it.
Doing either 1 or 2 above and then setting Is Preprocessed to Yes would result in you seeing the same result as if you had added each raster individually to ArcMap with the default stretch being applied.