I had a mess with replication and solved it with this
DECLARE @subscriptionDB AS sysname
SET @subscriptionDB = N'DBName'
-- Remove replication objects from a subscription database (if necessary).
USE master
EXEC sp_removedbreplication @subscriptionDB
GO
That and:
exec sp_cleanupdbreplication
Are the saviours when cleaning up messed up replications.