Yep. My experience:
Back in 12th grade my 1st test in Algebra and Geometry was a disaster. I terribly failed it with like 22%, while everyone got around 80%. The test was on vectors, the arithmetic of which I just couldn't understand. I had no sound excuse for it, and my mediocrity in math was accepted. I definitely cannot blame the teacher who in fact I thought to be one of the brightest, interesting, and fun teachers I had ever encountered. Of this, I can't be more honest.
So I told myself, how is this possible, because I like math? Am I dumb? Maybe I am not made for it? Well, I persevered a little longer for the next one, which I passed, then better marks for the next one, then ..., my final test (not the exam) was 100%. How was this possible? Maybe the last test was too easy? No chance! Well, my studying habits adapted quite well to the challenge. I was more flexible, and very determined to make myself better. It is very important to realize here that failure can build up character.
Since then, I haven't looked back. I know myself well enough to admit I have an average intelligence, in addition to being introverted at times. However, this doesn't keep me, for the moment, of running around after that which interests me: math, phys, computers, etc. My studying habits have definitely become more (if not very) efficient. When I sit to study, I put a timely constant effort to make sure I keep my concentration level as high and constant as I can. It takes energy, will, and high love for what you do. This is my trick. Lately, I noticed, the time I spend studying is significantly less than what it used to, even though my university years are advancing. Perhaps that is one of the main factors: discipline. Don't get me wrong however, it is rare now if I study one day for 6 hours, but it took me a volume lot to bring me to this point.
If you really like something, no matter how frustrating sometimes it may be, i.e you know your love is sincere, then it is really hard to put a leash on you. BTW, now I'm doing pure math and phys double honours, with a comp sc. minor in my 2nd year, and my GP for the moment is 4.0. Just put a lot of character into it, and the next time someone tells you to stop doing something you love because you apparently suck at it, then tell them to f*** off!