No, one should wear the gemstone based on the planetary position during his / her birth time. Wearing gemstone as per sun / moon zodiac will be solution that is more generic and would not fetch the desired results and even some times leads to disaster.
For example: - one of my client had born in Aquarius zodiac sign and some of his astrologer had recommended him blue sapphire. After wearing blue sapphire, he had undergone lots of loss and trauma in his personal and financial part of life. Later he approached me and shared me with his birth details and as per his birth details Saturn was inspected by mars and in his case if he wears blue sapphire or coral will definitely cause huge trouble in the areas which is ruled by mars, if worn blue sapphire and Saturn, if worn red coral. Therefore, I suggested him not to wear blue sapphire or red coral in his lifetime and bring danger in his life.