As Sandeep said, IIS deletes your cert if it does not have a private key.
This often occurs if you use IIS to create a Certificate Request from a CA. Your CA does not have your private key (you do) so the file does not contain the private key. He are the exact steps you need to do:
You originally created a Certificate Request from IIS on your Server.
You sent the request TXT file to your Certificate Authority so they could create the certificate for you.
Your Certificate Authority sent you back a .CRT file
On the same Windows Server you used to create the Certificate Request,
In Windows Explorer, right-mouse click on the .CRT file your Certificate Authority sent to you.
Select Install Certificate The Certificate Import Wizard runs
In the Certificate Import Wizard, in Store Location, select Local Machine
Select Place all certificates in the following store and select Trusted Root Certificate Authorities
This causes Windows to import the certificate into Windows (not into IIS).
Now you need to get the PFX file that contains the private key:
File - Add/Remove Snap-in…
Certificates (Local Computer)
From Certificates (Local Computer) - expanded Trusted Root Certification
Noticed my imported certificate with a key logo displayed on it
Open the certificate
Notice that it displays "You have a private key that corresponds to this certificate."
Right-mouse click on the certificate.
All Tasks --> Export
In the "Export Private Key" page of the wizard, select "Yes, export the private key"
Certificate Export Wizard prompts you -- Export File Format PKCS #12 (.PFX)
Certificate Export Wizard requires you to protect the file with a password:
Enter a password with which to protect the file.
Browse to a location and provide file name. File will have .PFX extension.
Then, Open IIS 7
Select your IIS Server in left (Connections) pane
Click Open Server Certificates in the Features view
From right side "Actions" pane, click Import…
Select the PFX file you exported
Provide the password you used to protect it