Web or Mobile?
This sounds like a really useful native mobile application as I'm guessing it will be notification-centric that will alert the user when action is required. Things to consider before diving into native mobile development:
Will this be OS-agnostic (i.e. will it run on iOS, Android, and possibly even Windows devices)
Will it be a universal binary (i.e. will it be built for both mobile and tablet, or only one or the other)
Cost of development - iOS or Android developers can be expensive if you aren't doing this yourself. HTML/CSS can be cheaper as there's a bigger pool to draw from. Backend development will vary.
Audience - who is this for? Is this for big farms, small farms, home farmers? What devices do they use and how will this be incorporated into their existing workflow?
Extensions/integrations/3rd party tools - Since you are dealing with a huge library of data (I assume, given the plethora of plant types and growing systems) and have other natural data-integrations that I'm guessing would be useful (some kind of weather API for example), taking into account what integrations you will be using and which systems they work best with may ultimately decide the best system to develop for.
Leveraging hardware - Will you be using any kind of hardware integrations (using a phone's camera or NFC capabilities, or the iPhone's M7 motion chip or new barometer for altitude measurements)? If yes, you may be pigeon-holed into whatever devices have the hardware you are utilizing and effectively eliminating a desktop application.
Naturally these are just a couple things to consider when deciding between web or native app and desktop or mobile/tablet. A lot of these are development concerns.
On the UX side of things, it sounds like you have a good grasp on what data the user will be required to enter. It would be very beneficial to draw this out in a user flow first to figure out what steps the user will take to achieve the end goal (and what that end goal really is). This should help inform the form elements the user will need to use for data entry.
Also, what types of data-entry can you automate or speed up? For example, if I have a bag of seeds, I could use my phone's camera to scan the barcode and have that run through an API to a seed database that could have suggested growing times, when to plant, specific notes to that seed and brand, lighting considerations, etc. Not sure if this exists, but if it does it may eliminate a lot of the form fields the user has to enter. Applying this to things like GPS could also speed up the data-entry process.
You may find you can auto-fill (or at least provide default values) for many fields in your data-entry that could have a significant impact on the user's experience.
It sounds like you are thinking about making this primarily a calendar view application. Have you considered making it more of a news feed or task management type of system? Just a thought, but if this is really dedicated to creating actionable tasks for future dates, framing this on a system like GTD may be a more practical approach then a strict calendar application. There could certainly be a read-only calendar view, but the default view would be more list view sorted by date.
Incorporating notifications for the user also seems like a very important step and requires notification and account settings, but that's a whole 'nother beast ;)
UPDATED BASED ON COMMENT
You may be able to get around having the users create an account if you only want them to be able to use it on one dedicated device and store and data locally to that device. That's pretty limiting though especially in this day and age where everyone expects their applications to run across devices and platforms.
For notifications, you'll have to think about when you want to notify users of actions. For example, it would be really nice to get a notification like "Your tomatoes are almost ready to harvest!" but do you want that to come a day before harvest day, a week before harvest day, or the day of? Do you want to have multiple notifications (one a week before and one on the day of)? What happens when you have 20 different crops? Do you really want your user to get multiple notifications everyday during harvest time? Also, do you want to control how often these are blasted out to the user, or do you want them to have control? Do you want to set defaults and then let them adjust as needed?
Notifications are tricky to get right, but are extremely useful if done properly. Try to put yourself in your users shoes and make your best guess. Then make a prototype and get it in the hands of someone in your target demographic and get feedback from them. Improve on your original prototype given that information.
Maybe the best advice is really figure out what the core application is and just get it out to users. Don't get caught in the weeds with all the additional functionality. Even if it's just a calculator app to begin with that focuses on growth times, that's better than a huge multifunctional calendar-project management alerting notifying crazy app that's forever under development.