Sometime if will try to delete a publication we may get error message like:
Cannot execute as the database principal because the principal "dbo" does not exist, this type of principal cannot be impersonated, or you do not have permission.
Step 1: Execute following query:
USE <Database Name>
EXECUTE sp_droppublication @publication = N'Publication Name'
Note: Replace <Database Name> and 'Publication Name' to correct value.