Is it (always) necessary to backup a certificate with private key?
The code above will only backup the PUBLIC key portion of the certificate. This however by itself, is useless. 

The private key is the part needed to decrypt the database - without this the database cannot be decrypted and therefore cannot be accessed.

sqlity Backup Certificate explanation


  To back up a certificate you can use
  the BACKUP CERTIFICATE statement. In its simplest form, it looks like
  this:


 BACKUP CERTIFICATE ACertificate TO FILE ='C:\temp\ACertificate.cert';



  But what about the Private Key? The above statement creates a backup
  of the public portion of the key only. That is however not the
  important part. The important part is the private key of the
  certificate. To create a backup of the private key too, we have to add
  the WITH PRIVATE KEY clause to the BACKUP CERTIFICATE statement:


 BACKUP CERTIFICATE ACertificate    TO FILE
 ='C:\temp\ACertificate.cert'   WITH PRIVATE KEY(
     FILE = 'C:\temp\ACertificate.prvk',
     ENCRYPTION BY PASSWORD = '**********'   );