Mine sometime irritate each other, probably due to the big age gap and being different genders. I sat them down and told them that family was important, that the two of them had to work it out as they were brother and sister, and would be there for each other when they needed it most, that I understood that ds could be irritating and dd could be condescending, but think what life would be like without each other to annoy.
I made them write down three things they liked about each other, and got them got them to stand up and read them out.
They also had to make something for the other one, and wrap it. Dd made ds a toy car out of balsa wood, ds drew her a picture.
I also took a "top three biggest peeves" and asked them to negotiate with each other, with me as a referee. So he won't touch her sewing anymore, and she will ask me before demanding the wii is turned off mid game, so he loses everything, etc. We now have a family meeting on Monday mornings so I can take requests, as long as we balance it out with good stuff and it doesnt turn into a witch hunt!
We also ran over the big no nos in the house. No derogatory language directed towards each other, no hitting or destructive behaviour, and to remember we are a family, we love each other, and life can be so much happier if we make an effort to be kind and nice to each other. I agreed to give each of them one day alone time a month with me or dh and give them one on one time throughout the day.
I agree you absolutely ARE a good mother, it sounds like you care a lot. Kids test boundaries, they need guidance, it doesnt make anyone less of a mother that this is the case.