At this point I feel I should leave an answer which records a differing opinion.
First, let me provide context. My advice is for students applying the STEM PhD programs in the United States (like the OP). I was admitted to the top three math PhD programs in the United States and graduated from one of them in 2003. Since 2006 I have been tenured-track at UGA; I am now a tenured associate professor. I spent four years on the Graduate Committee reading applications, and though I am now on a different committee, because I am co-PI on a large NSF grant I read a stack of applications last year and will probably continue to do so for several years to come. I have also read thousands of academic recommendation letters for faculty positions. (This is, unfortunately for me, not an exaggeration.)
The accepted answer gives what I think is not good advice for the OP's situation. I think it might be good advice for non-academic recommendation letters, and I suspect that it was in fact not written to be targeted at PhD applications. Going over the entire answer point-by-point feels unnecessarily confrontational, but let me differ in some key points, all of which I think could lead a student astray.
- Most of the best recommendation letters for STEM PhD programs in the US are written by those who have substantial experience in this area. In my field of mathematics, a letter written by someone who does not have a PhD in mathematics or a closely related field is likely to be simply skipped over. (I have learned on this site that in some other STEM fields, good letters can be written by those who have substantial industrial experience. But such people still have to have a lot of experience with PhDs in the relevant fields.) The best letters are written by those who have faculty experience as well, have seen many academic recommendation letters, and who are known by the faculty doing admissions, at least by reputation.
Is this description somewhat elitist and exclusionary of younger, non-tenure track and liberal arts faculty? Yes, it is. But it is also honest. If we get a letter from a small liberal arts college that says "Ms. X is the best student I have ever seen" and then doesn't display a familiarity with the type of students that succeed in programs like ours, it's hard to know what to make of it. If the recommender is not an active researcher: well, that's just not as good as someone whose name we all know and trust. How could it be?
In a comment it was suggested that the above situation is impossible because everyone starts out with less experience than the above. Most letters we get are not written by people who are just starting out. If you spend a few years in a faculty position you'll see a deluge of academic recommendation letters and absorb the format. If you are a very junior person who is nevertheless a good choice to write a letter (which certainly does happen), you should get help and advice from someone more experienced. You should not rely on someone who is much less experienced, and still less on an undergraduate, and yet less on that undergraduate for whom you are writing.
- Any reasonably good letter contains components that almost no student could write. For instance such letters should include information about the credentials and experience of the writer, enough to explain why their endorsement of the student is to be relied upon. Such letters should compare the student generally to other students in the recommender's program, to the generic student in the target PhD program, and ideally to past specific students that the writer and the reader will both know. Even the one in a million student who has preternatural access to this information cannot give it: it has to come from writer, in the writer's voice.
There is plenty of room in such an application for a student to provide information about her strengths, goals and interests. A good faculty letter makes contact with that student information and reinforces it, but such information does not form nearly enough of a letter for it to make sense for a student to write it up as though it could be the basis of the faculty letter: at best, doing this would waste everyone's time, not save it.
Writing academic letters is not a "favor": it is part of what faculty are paid to do. More precisely, it is part of what permanent, full-time faculty are paid to do. I've spent about eight hours over the last few days writing letters for current and former UGA math department personnel, and I will spend at least that much time on the task in the next few weeks. I spend so much time on these tasks because (i) it's important -- the difference between an effective letter and ineffective one may play out as a difference in some young person's life; and (ii) I have a stake in it as well: when one of our undergraduates goes to a top ten PhD program or one of our PhD students gets an NSF postdoc, my entire department benefits and in so doing I benefit. If I were a temporary, adjunct or part-time faculty member, I strongly suspect that I would not feel the same way, and I certainly would not expect such a faculty member to devote such time and effort. Someone who thinks of recommendation letters as a favor is someone you don't want to write for you and, I feel, someone who shouldn't have to. Also, no one is required to write a letter for any given student: if you feel like you can't write an effective letter, say so and don't do it.
A letter which is written first by a student and then touched up by the faculty signee is a potentially serious academic honesty situation. I have spoken about this at length elsewhere on this site. I respect that some others do not feel this way and that in many situations there is nothing immoral or suboptimal going on here. However you need to know that many -- I suspect most -- American academics share my qualms. Even the fact that the student must not see the letter is regarded as sacrosanct by many. I am very dismayed when people try to say that they are not really just signing their students' letters -- or only if they "actually endorse everything that is written"!! -- but are just getting this writing sample as step one of a final product that is not in any way problematic. To that I say: if you know how to write a reasonable specimen of an academic letter you will know that a "student draft" is at best helpful only as a source of information about the student, so what is being gained by not just asking for the information outside of a letter format? By soliciting a student draft you are inviting the student to be complicit in a possible academic dishonesty whose final outcome is unknown to them. If later in their graduate career it comes up that they think they wrote their own letter it could still go or at least look very badly for them, even if it turns out that nothing so terrible actually transpired. Then there are the deceptive habits you are implicitly conveying to the student as being part of normal academic business. If you don't think you are teaching the student to be deceptive, ask yourself this: would you be willing to submit a letter that was signed jointly by you and the student, or even in which it is explicitly mentioned that it was written based on an early draft of the student? If you are not willing to put that in the letter, then yes, you are being unethically deceptive and encouraging the student to do the same. If on the other hand you are willing to put that in the letter: please try it, and see what happens. I think you'll get some interesting feedback.