This is the description of the -depth parameter in convert:
This is the number of bits in a color sample within a pixel. The only acceptable values are 8 or 16. Use this option to specify the depth of raw images whose depth is unknown such as GRAY, RGB, or CMYK, or to change the depth of any image after it has been read.
24 is an invalid value, although you have 24 bps. I think what you want is a depth of 8, e.g. 8 bits per color, totalling to 24 bits per sample.
On the other hand, how can the format that you have ever be 32 bits? Is it RGBA? But then the depth is still 8 bits, and besides, it is an internal PNG representation.