Yes, of course a metal roof can be painted! But of course, avoid water-based paints as these can damage your roof. Acrylic latex paint or oil-based paints produce way better effects.