They should have made the Illusive Man the final boss.
Think about it.
Sheperd could have rejected the Star Child's "solutions", then an enraged Star Child, (who couldn't possibly let Sheperd go), merges himself with the body of the Illusive Man, creating a mutated, reaper version of him.
That would be a sweet final battle you have to admit. A weakened, vulnerable Sheperd having to muster the last of his strength battling a shell of his greatest foe.
The winner, determining the fate of the galaxy.
(My version could also have had the Illusive man gaining control of the remaining forces, causing him to become the "core" of the fleet as it were. So you would have to fight a version of him intergrated into the base with your crew. Make it hard as nails. Would be just awesome!

)
EDIT: Either way its a great throwback to the first game's ending where you fight Saren.
It ends as it began, as it were.
EDIT 2:
Illusive Man: "I shouldn't ever have let you out of my sight Shepard! I...we... are going to correct that mistake!"
Shepard: "... I'm not planning on leaving this time... This ends now!"