You are making an incorrect assumption. The problem is not the image, your problem is the profile inthe image. The profile attached to the image is an RGB profile but the tiff is stored with the 'tiff:photometric' = 'min-is-black'. This means the reader of the tiff file is told that it should create a grayscale image.
If you want to want to change the color space based on the image profile you should read 'image.GetAttribute("icc:description")' and change the color space accordingly. But I would not advise you to do this, it is possible that the color profile attached to the image is incorrect.
If you want to want to change the color space based on the image profile you should read 'image.GetAttribute("icc:description")' and change the color space accordingly. But I would not advise you to do this, it is possible that the color profile attached to the image is incorrect.