Query to get number of related records in 2 child tables
Did you try this query?  Did it work?  Unless ID and Title are the only columns in the Brands table this query would result in an error.  

I would use subqueries for this:

SELECT
   Brands.*,
   (SELECT COUNT(*) FROM Pens WHERE CatID = Brands.ID) AS PensCount,
   (SELECT COUNT(*) FROM Pencils WHERE CatID = Brands.ID) AS PencilsCount
FROM 
   Brands