Wouldn't it be easier (and less risky to your hardware) to make the kernel lie about the device ID? Or modify the nvidia kernel blob to compare against another ID?
Having said that, distinguishing in software would mean that open source drivers such as Nouveau won't see any difference between the cards and can advertise all the features always.