Creating Maximum-Value Composite using QGIS?

I think you can use QGIS raster calculator for this (Raster > Raster calculator...).

Having a rasterA, rasterB and rasterC layers, and assuming that you only have a band in each on of them, you can use a expression like this:

("rasterA@1" >= "rasterB@1" AND "rasterA@1" >= "rasterC@1") * "rasterA@1" +
("rasterB@1" > "rasterA@1" AND "rasterB@1" >= "rasterC@1") * "rasterB@1" +
("rasterC@1" > "rasterA@1" AND "rasterC@1" > "rasterB@1") * "rasterC@1"

The ("rasterA@1" >= "rasterB@1" AND "rasterB@1" >= "rasterC@1") parts, test id a certain layer value is bigger than the others will result in 0 or 1, whether the condition is satisfied or not. After the multiplication the result will have 0 or the value of the raster. Adding all the tree results will give you the hightest value.

There is probably a more elegant way to to this, but I think it will work.