My suggestion is to add the desired widget to your app and customize the copy of the OTB widget in your app and not the stemApp folder. That way you can still have an original of the OTB widget and your copy customized.
Definitely. Anyone who works with web tech would tell you the same thing. If you find that the OOB (Out of the Box) functionality isn't what you want? Clone the OOB and make it a modified clone. Otherwise you are going to have to maintain IT'S code base AND YOUR codebase as it gets upgraded.
Personally, I feel like they should have a 'Child' widget functionality so that I could create a CHILD of Widget X, and it would have ALL functionality of 'Parent' PLUS my additional code. Then I could create PLUS versions of any Widget without taking away from and having to maintain multiple codebases.
Just my two cents... granted, closer to a buck fifty, but still...