Filtering like exclude_replies=1 happens after retrieving 12 tweets. So when you ask for 12 tweets and exclude replies, you get 3 tweets because the rest are replies.
I found requesting user_timeline with max_id, since_id and and then doing my own filtering a bit easier to work with https://dev.twitter.com/rest/public/timelines