Melody or Machine: Detecting Synthetic Music with Dual-Stream Contrastive Learning