How to remove a non-existant iCloud mail account from mail?
I know this is an old question, but since it was one of the first hits on a google search I thought it could use an answer that worked for me. I had a similar problem to this - I had a duplicate of my iCloud account that I couldn't remove, and I received the same message about having to delete the account in system preferences. Deleting the account from there didn't seem to help, so I was searching for possible solutions, and an answer to a similar question put me on the right track. You can see my description of the fix on that post (How to remove 'phantom' iCloud account from Apple Mail) , but I'll repeat it here:

First, I logged out of iCloud in system preferences, and let it delete all the relevant local copies of iCloud data.

Next, go to the Library folder in finder. You can do this by holding 'option' and clicking the 'Go' item in the menu bar, then selecting Library.

In this folder, go to a folder called Mail. In this folder, you'll find Mail/V2/. In Mail/V2/ there are a number of folders corresponding to the accounts you have added in Mail. It's easy to tell which is which. There's also a folder called MailData - I'm using Yosemite, and the folder MIGHT have a different name/structure in other versions, but regardless of version you should be able to find a file called Accounts.plist.

First I deleted the folders that corresponded to the accounts I wanted to purge. Next, I opened Accounts.plist in a text editor – it doesn't matter which one you use, but your life will be slightly easier if your editor of choice can highlight matching tags in xml type files.

The part you're looking for begins with the following:

&lt;key&gt;MailAccounts&lt;/key&gt;
&lt;array&gt;


The next thing you'll see is a &lt;dict&gt; tag. This is the beginning of an individual account 'object'; all information for each account will be between &lt;dict&gt; and &lt;/dict&gt; tags. Find the 'block' that seems to correspond to the account you don't want, and delete everything from the &lt;dict&gt; to the &lt;/dict&gt;, including the tags themselves. Be careful though, because there's another set of tags nested inside containing info about the vendor of your email account - you want to be sure you're selecting the matched outer pair.

Having done this, I was able to load up Mail again, and the unwanted accounts were gone. The remaining accounts were working fine. I then went back to the iCloud preference pane, logged into my account again, and checked the box for Mail – it worked, and I now have a fully functional iCloud mail account, and no duplicates.