Try this:
DECLARE @dFrom DATETIME
DECLARE @dTo DATETIME
SET @dFrom = '01-04-2013'
SET @dTo = '30-04-2013'
SELECT TOP(3) MagazineName, SubscCount
FROM (
SELECT M.mag_name AS MagazineName, COUNT(S.mad_id) AS SubscCount
FROM Subscription AS S LEFT JOIN Magazine AS M ON S.mag_id = M.mag_id
WHERE S.start_date>= @dFrom AND S.end_date<=@dTo
GROUP BY M.mag_name
) AS T
ORDER BY SubscCount DESC